700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 将DataFrame的数字部分由字符串类型转换为数字类型

将DataFrame的数字部分由字符串类型转换为数字类型

时间:2018-09-29 12:43:57

相关推荐

将DataFrame的数字部分由字符串类型转换为数字类型

今天我准备用Excel进行画图的时候,我发现我Excel中的数据无法正常画出,例如:

这是为什么啊,因为这些数据储存的时候,被存为了字符串类型,而不是数字类型,我们可以通过python函数进行数据类型的转换

具体代码如下:

import pandas as pddata = pd.read_csv("333.csv")def SeriesFloat(series):""":param series: 输入的series:return: 元素转换为float或int后的series"""length = len(series)FloatSeries = pd.Series([], dtype='object')index = 0for i in range(length):n = series[i]# 将可变为float或int类型的元素转换为float或int,不能转换的保留原格式try:if '*' in n: # 运算符都需要考虑,我这边数据里只有乘号FloatSeries[index] = nelse:FloatSeries[index] = eval(n)except Exception:FloatSeries[index] = nindex += 1return FloatSeriesdef DataFrameFloat(dataframe):""":param dataframe: 输入的dataframe:return: 元素转换为float或int后的dataframe"""# 构建与传入dataframe列名相同的dataframecolumns = []for column in dataframe.columns:columns.append(column)FloatDataFrame = pd.DataFrame(columns=columns)# 将元素转换为float的series赋值到目标dataframefor i in columns:series = dataframe[i]series = SeriesFloat(series)FloatDataFrame[i] = seriesreturn FloatDataFramedataz = DataFrameFloat(data)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。