请注意,您不是在处理OHE。
str.split
+ stack
+ get_dummies
+sum
df = pd.Dataframe(data)df mesh0 A, B, C1 C,B2(df.mesh.str.split('s*,s*', expand=True) .stack() .str.get_dummies() .sum(level=0))df A B C0 1 1 11 0 1 12 0 0 0apply
+ value_counts
(df.mesh.str.split(r's*,s*', expand=True) .apply(pd.Series.value_counts, 1) .iloc[:, 1:] .fillna(0, downcast='infer')) A B C0 1 1 11 0 1 12 0 0 0
pd.crosstab
x = df.mesh.str.split('s*,s*', expand=True).stack()pd.crosstab(x.index.get_level_values(0), x.values).iloc[:, 1:]dfcol_0 A B Crow_0 0 1 1 11 0 1 12 0 0 0


