[英]Pandas dataframe column split
我有一个包含 3 列的 pandas dataframe。
这是它的样子:
User History New
101 [X,Y,Z] [A-0,B-1]
102 [Q,M,N] [A-1,B-0]
我想修改我的 dataframe 以这种方式表示:
User History New 0or1
101 [X,Y,Z] A 0
101 [X,Y,Z] B 1
102 [Q,M,N] A 1
102 [Q,M,N] B 0
我该怎么做?
基本上,我这样做的原因是因为我正在尝试创建一个 model,它根据历史为 new 中的每个元素预测 0 或 1。 因此,我认为以这种方式拆分它们对于基于三列训练 model 是有意义的。
尽管我正在寻找按照描述拆分 dataframe 的方法,但如果有任何其他有效的方法我可以使用提供的数据(第一个表)创建 model 来预测数组中每个元素的 1 或 0,我愿意接受建议新的'为各自的历史。
提前致谢。
import pandas as pd
df1 = df.explode('New')
pd.concat([df1,df1.New.str.split('-', expand = True)],axis=1)
User History New 0 1
0 101 [X, Y, Z] A-0 A 0
0 101 [X, Y, Z] B-1 B 1
1 102 [Q, M, N] A-1 A 1
1 102 [Q, M, N] B-0 B 0
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.