【发布时间】:2019-05-31 16:23:14
【问题描述】:
我有一个包含浮点值的列表,我想用它制作一个 DataFrame。但我收到一个错误 TypeError: 'float' object is not iterable
'''python
newlist = []
for i in path.toolpath:
newlist = [i.x, i.y,i.z, i.e, i.moveSpd]
labels = ['x_coordinate' , 'y_coordinate', 'z_coordinate', 'e', 'speed']
df1 = pd.DataFrame.from_records(newlist, columns = labels)
print(df1)
'''
A part of newlist is as follows.
[-40.8629, 2.28, 44.3492, 1698.7625, 300]
[-40.788, 2.28, 43.352, 1699.0625, 300]
[-40.7131, 2.28, 42.3548, 1699.3625, 300]
[-40.6382, 2.28, 41.3576, 1699.6625, 300]
[-40.5633, 2.28, 40.3604, 1699.9625, 300]
【问题讨论】:
-
你能提供一个你的数据框应该是什么样子的sn-p吗?
-
这不是熊猫或数据框问题,而是纯 python:“为什么我的循环中的 newlist 变量没有得到更新?”您需要使用反引号字符而不是单引号来创建代码 sn-ps。对于您的问题,问题是您在每个循环中将最新的
i分配给newlist,覆盖之前在newlist中的任何内容。您可以在循环中通过print(f"i: {i}")和print(f"newlist: {newlist}")找到它,并注意到它们都只包含最新的i。