创建表python

时间:2017-11-03 02:16:01

标签: python pandas

我在excel中有一个数据集。下面给出了数据样本。每行包含许多项目;每列中有一个项目。数据也没有标题。

a b a d

g z f d a

e

dd gg dd g f r t

想要创建一个如下所示的表格。它应该计算每行中的项目并按行显示计数。我不知道apriori表中有多少项目。

row# a b d g z f e dd gg r t

1 2 1 1 0 0 0 0 0 0 0 0

2 1 0 1 1 1 1 0 0 0 0 0

3 0 0 0 0 0 0 1 0 0 0 0

4 0 0 0 1 0 1 0 2 1 1 1

我不是python的专家,非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

使用get_dummies + sum

df = pd.read_csv(file, names=range(100)).stack() # setup to account for missing values
df.str.get_dummies().sum(level=0)

   a  b  d  dd  e  f  g  gg  r  t  z
0  2  1  1   0  0  0  0   0  0  0  0
1  1  0  1   0  0  1  1   0  0  0  1
2  0  0  0   0  1  0  0   0  0  0  0
3  0  0  0   2  0  1  1   1  1  1  0