我有一个 Pandas 数据框 df。我希望 df 由 3 列组成:第一个是品牌名称(字符串),第二个是整数列表,第三个是浮点数列表。因此,对于每个品牌,我有两个列表,我想将它们全部放在一个数据框中,以便根据品牌名称轻松访问不同的列表。
我有 :
count = [1,5,198,0,0,35]
brand = 'Nike'
并将计数列表放入与“耐克”行对应的“计数”列中,我尝试了以下操作:
df[df['brand']==brand].loc[0,'count'] = count
df[df['brand']==brand]['count'] == count
df[df['brand']==brand]['count'].loc[0] == count
这些都不起作用,我得到
ValueError: Must have equal len keys and value when setting with an iterable
或 A value is trying to be set on a copy of a slice from a DataFrame
df 没有任何变化。如何将列表写入 Pandas 数据框单元格?
最佳答案
在我看来,您正在构建错误的数据模型。
该模型不是第一范式(1NF),使用它会遇到很多麻烦。
请尝试使用标准化模型。
Brand price
0 Nike 50.0
1 Nike 60.0
2 Nike 70.0
3 Puma 30.0
4 Puma 100.0
您可以轻松地从此模型中获取任何计算值。
关于python - 在 Pandas 中定义列类型为 'list',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37134622/