【发布时间】:2017-07-31 21:29:45
【问题描述】:
在 Pandas 中,是否可以有一个包含不同数量子列的列的数据框?
例如,假设我有这个 CSV 文件:
transactionId, userName, date, itemList, totalCost
其中itemList 包含可变数量的itemId;itemPrice 对,这些对由管道分隔(|)。列表中itemId;itemPrice 对的数量没有上限。
itemId ; itemPrice | itemId ; itemPrice
以下是一些行示例:
transactionId, userName, date, itemList, totalCost
123, Bob , 7/29/2017, ABC;10|XYZ;20, 30
234, Alice, 7/31/2017, CDE;20|QRS;15|KLM;10, 45
第一行有两对itemId;itemPrice,而第二行有三对。
如何创建一个数据框来包含这些信息?我需要在数据框内添加一个数据框吗?
还有其他关于可变列数的 Stackoverflow 帖子,但 they assume a maximum number of columns。
【问题讨论】:
-
您可以考虑将它们存储为字典吗?
-
如果您希望每个单元格有一个单独的值(而不是字典),您应该决定是使表格“宽”(每个额外的值多出一列)还是“高”(多出一行)每个额外的价值)。答案会因您的选择而异。
-
@DYZ:我想我需要它们。例如,我的目标之一是审核
itemPrice值的总和是否等于整行的totalCost。