我有以下数据框:
import pandas as pd
import numpy as np
df = pd.DataFrame({'Q1': ['A,B', 'A,C', 'A,B', 'B,C', 'A,B,C','C,B,A','B,C,A'],
'Q2': ['B,A', 'C,A', 'B,C,A', 'A,B', 'A,C', 'B,C','C,B'],
'Q3': ['C,A', 'C,B', 'A,B', 'C,B', 'A,B,C','A,B,C','C,A']})
df['Q1'] = df['Q1'].apply(lambda x: x.split(','))
df['Q2'] = df['Q2'].apply(lambda x: x.split(','))
df['Q3'] = df['Q3'].apply(lambda x: x.split(','))
colQ1 = df["Q1"].explode().unique()
colQ1df = pd.DataFrame(columns = colQ1)
df = pd.concat([df, colQ1df], sort=False)
print(df)
如果列“Q1”包含“A”,我想用“1”填充新列“A”,如果不包含,则用0填充
您可以使用应用程序:
是这样吗
不要分解值,如果需要以相同的方式处理每一列,最好将^{} 与^{} 一起使用:
如果希望每列分隔数据帧:
相关问题 更多 >
编程相关推荐