今天我准备用Excel进行画图的时候,我发现我Excel中的数据无法正常画出,例如:
这是为什么啊,因为这些数据储存的时候,被存为了字符串类型,而不是数字类型,我们可以通过python函数进行数据类型的转换
具体代码如下:
import pandas as pd
data = pd.read_csv("333.csv")
def SeriesFloat(series):
"""
:param series: 输入的series
:return: 元素转换为float或int后的series
"""
length = len(series)
FloatSeries = pd.Series([], dtype='object')
index = 0
for i in range(length):
n = series[i]
# 将可变为float或int类型的元素转换为float或int,不能转换的保留原格式
try:
if '*' in n: # 运算符都需要考虑,我这边数据里只有乘号
FloatSeries[index] = n
else:
FloatSeries[index] = eval(n)
except Exception:
FloatSeries[index] = n
index += 1
return FloatSeries
def DataFrameFloat(dataframe):
"""
:param dataframe: 输入的dataframe
:return: 元素转换为float或int后的dataframe
"""
# 构建与传入dataframe列名相同的dataframe
columns = []
for column in dataframe.columns:
columns.append(column)
FloatDataFrame = pd.DataFrame(columns=columns)
# 将元素转换为float的series赋值到目标dataframe
for i in columns:
series = dataframe[i]
series = SeriesFloat(series)
FloatDataFrame[i] = series
return FloatDataFrame
dataz = DataFrameFloat(data)
1512

被折叠的 条评论
为什么被折叠?



