Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Panda Error TypeError:/:';str';和';int';_Python_Pandas - Fatal编程技术网

Python Panda Error TypeError:/:';str';和';int';

Python Panda Error TypeError:/:';str';和';int';,python,pandas,Python,Pandas,我正在努力学习如何在Python中使用Pandas。我在对我的熊猫数据框进行数学运算时遇到了问题。 现在,我的数据帧看起来像这样: 打印(标记) 现在让我们假设我想把第0行除以1000 mark_time = mark[0] / 1000 这会产生错误 TypeError: unsupported operand type(s) for /: 'str' and 'int' 我猜是因为我当前的数据帧不被认为是INT,所以我继续这样做: mark_time = float (mark[0]

我正在努力学习如何在Python中使用Pandas。我在对我的熊猫数据框进行数学运算时遇到了问题。 现在,我的数据帧看起来像这样:

打印(标记)

现在让我们假设我想把第0行除以1000

mark_time = mark[0] / 1000
这会产生错误

 TypeError: unsupported operand type(s) for /: 'str' and 'int'
我猜是因为我当前的数据帧不被认为是INT,所以我继续这样做:

mark_time = float (mark[0] / 1000)
然而,这也给了我同样的错误。谁能给我解释一下原因吗

我的第二个问题是关于策划的问题。我已经很好地学习了matplotlib,我想在我的Panda数据帧上使用它。目前我的做法是:

fig1 = plt.figure(figsize= (10,10))
ax = fig1.add_subplot(311)
ax.plot(mike_time, mike[0], label='mike speed', color = 'red')
plt.legend(loc='best',prop={'size':10})

我可以用我的数据帧替换mike_time和mike[0]吗?

您需要使用pandas.read_csv而不是python的csv

在这里,您可以使用dtype参数为其提供要使用的正确数据类型:

来自熊猫

数据类型:列的类型名称或目录->类型,默认无数据类型 用于数据或列。例如{'a':np.float64,'b':np.int32} (engine='python'不支持)。使用str或object来保存和 不解释数据类型

如果必须在导入时使用“from_records”解析CSV,则可以使用强制\u float=True

强制浮点数:布尔值,默认为False,尝试将值转换为 非字符串、非数字对象(如decimal.decimal)到浮点 点,对SQL结果集很有用


您需要使用pandas read_csv,它将自动为每个列指定最合适的类型。如果您有任何混合类型列,它将警告您。然后,您可以显式设置类型再次运行它。

强制转换类型
mark[0]=mark[0]。astype(int)
float(mark[0])/1000
而不是
float(mark[0]/1000)
@MMFI收到此错误类型错误:无法将序列转换为@EdChum,但是,我必须为每一列都这样做吗?例如,当我生成数据帧时,有没有一种更简单的方法来实现这一点?您首先是如何制作df的?df.info()显示了什么?我已经尝试过了,但是我一直得到一个错误:TypeError:“dtype”是这个函数的无效关键字参数。我这样做的方式是:csv.reader(fp,skipinitialspace=True,dtype=float)这个答案是错误的,
pd.read\u csv
将尝试通过嗅探来推断数据类型,OP使用了与csv完全不同的
csv
模块。我尝试过这一点,但我一直收到一个错误:TypeError:“dtype”是此函数的无效关键字参数。我的方法是:csv.reader(fp,skipinitialspace=True,dtype=float)您使用的是csv.reader,这是一个python函数。您需要使用pandas.read\u csv,而不需要该函数。只需df=pd.read\u csv(“data.csv”)
fig1 = plt.figure(figsize= (10,10))
ax = fig1.add_subplot(311)
ax.plot(mike_time, mike[0], label='mike speed', color = 'red')
plt.legend(loc='best',prop={'size':10})