我正在使用大型csv文件,最后一列的下一行有一个文本字符串,我希望通过特定的分隔符进行拆分.我想知道是否有一种简单的方法可以使用pandas或python来做到这一点?
CustNum CustomerName ItemQty Item Seatblocks ItemExt
32363 McCartney, Paul 3 F04 2:218:10:4,6 60
31316 Lennon, John 25 F01 1:13:36:1,12 1:13:37:1,13 300
Run Code Online (Sandbox Code Playgroud)
我想的空间分割(' '),然后结肠(':')在Seatblocks列,但每个单元格将导致不同的列数.我有一个重新排列列的功能,所以Seatblocks列位于工作表的末尾,但我不知道该怎么做.我可以使用内置text-to-columns函数和快速宏在excel中完成它,但我的数据集有太多的记录供excel处理.
最终,我想记录约翰列侬的记录并创建多条线,每组座位的信息都在一条单独的线上.
我有以下DataFrame,其中一列是一个对象(列表类型单元格):
df=pd.DataFrame({'A':[1,2],'B':[[1,2],[1,2]]})
df
Out[458]:
A B
0 1 [1, 2]
1 2 [1, 2]
Run Code Online (Sandbox Code Playgroud)
我的预期输出是:
A B
0 1 1
1 1 2
3 2 1
4 2 2
Run Code Online (Sandbox Code Playgroud)
我该怎么做才能做到这一点?
相关问题
pandas:当单元格内容是列表时,为列表中的每个元素创建一行
好的问题和答案,但只处理一列列表(在我的回答中,自我修复功能将适用于多列,也接受的答案是使用最耗时apply,不推荐,检查更多信息我应该什么时候想要在我的代码中使用pandas apply()?)