我有一个熊猫数据框,我想做一些分析,它看起来像这样:
from pandas import DataFrame
a = DataFrame([{'var1': 'K802', 'var2': 'No Concatenation', 'var3':'73410'},
{'var1': 'O342,O820,Z370', 'var2': '59514,01968', 'var3':'146010'},
{'var1': 'Z094', 'var2': 'No Concatenation', 'var3':'233210'},
{'var1': 'N920', 'var2': '58120', 'var3':'130910'},
{'var1': 'S801,W2064,I219', 'var2': 'No Concatenation', 'var3':'93630'},
{'var1': 'O987,O820,Z302,Z370', 'var2': '59514,01968,58611', 'var3':'146010'},
{'var1': 'O987,O820,Z302,Z370,E115', 'var2': '59514,01968,58611', 'var3':'146020'},
{'var1': 'N359,N319,J459', 'var2': '52281', 'var3':'113720'},
{'var1': 'O342,O343,O820,Z370', 'var2': '59514,01968,59871', 'var3':'146010'},
{'var1': 'J459,C449,E785,I10', 'var2': 'No Concatenation', 'var3':'43810'},
{'var1': 'Z380,C780,C189,I270,J449,Z933', 'var2': 'No Concatenation', 'var3':'157520'}])
print a.var1
0 K802
1 O342,O820,Z370
2 Z094
3 N920
4 S801,W2064,I219
5 O987,O820,Z302,Z370
6 O987,O820,Z302,Z370,E115
7 N359,N319,J459
8 O342,O343,O820,Z370
9 J459,C449,E785,I10
10 Z380,C780,C189,I270,J449,Z933
Name: var1, dtype: object
它已被截断,因为它来自的csv文件有100多万行。最终的目标是这样:
b = DataFrame([{'K802':1, 'O342': 0, 'O820':0, 'Z370':0, 'Z094': 0, 'N920':0, 'S801':0, 'W2064': 0, 'I219':0},
{'K802':0, 'O342': 1, 'O820':1, 'Z370':1, 'Z094': 0, 'N920':0, 'S801':0, 'W2064': 0, 'I219':0},
{'K802':0, 'O342': 0, 'O820':0, 'Z370':0, 'Z094': 1, 'N920':0, 'S801':1, 'W2064': 0, 'I219':0},
{'K802':0, 'O342': 0, 'O820':0, 'Z370':0, 'Z094': 0, 'N920':1, 'S801':0, 'W2064': 0, 'I219':0},
{'K802':0, 'O342': 0, 'O820':0, 'Z370':0, 'Z094': 0, 'N920':0, 'S801':1, 'W2064': 1, 'I219':1}])
print b
I219 K802 N920 O342 O820 S801 W2064 Z094 Z370
0 0 1 0 0 0 0 0 0 0
1 0 0 0 1 1 0 0 0 1
2 0 0 0 0 0 1 0 1 0
3 0 0 1 0 0 0 0 0 0
4 1 0 0 0 0 1 1 0 0
...
基本上,我希望为a.var1
行中的每个唯一条目获取一个新列,然后用1
填充这些列,表示该行中存在,或者0
表示不存在。我需要分别对var1
、var2
和var3
进行此操作,然后通过原始a
的索引将这三者连接起来,这样我就可以计算频率,可能还有一些逻辑回归。
我是新来的熊猫,似乎不知道如何有效地做到这一点。你知道吗
任何帮助都将不胜感激。你知道吗
您可以使用上定义的^{} 方法pd系列. 对于这个用例,它比
pd.get_dummies
函数更简单。然后你可以使用pd.concat公司合并生成的dfs。你知道吗相关问题 更多 >
编程相关推荐