Dataframe元素访问

时间:2016-10-28 11:39:26

标签: python pandas

我有一个源数据框,需要循环查看所有注释值,这些值是相应名称字段中存在的Grouped By值,结果需要作为DF中的新列附加。这也可以是一个新的DataFrame。

输入数据:

240dp x 320dp

例如 - 对于Name N-1的所有注释值,运行一个循环并将输出添加为新列以及这两个值(Name,Comment)。

我尝试执行以下操作,并能够根据名称进行分组。但我无法通过所有值的值来追加输出:

      Name            Comments
0     N-1               Good
1     N-2               bad
2     N-3               ugly
3     N-1         very very good
4     N-3          what is this
5     N-4            pathetic
6     N-1         needs improvement
7     N-2         this is not right
8     Ano-5      It is average

[8 rows x 2 columns]

分组循环中的数据如下:

gp = CommentsData.groupby(['Document'])

for g in gp.groups.items():
    Data1 = CommentsData.loc[g[1]]
    #print(Data1)

我无法访问第二列中的值。 使用 Name Comments 0 N-1 good 3 N-1 very very good 6 N-1 needs improvement 1 N-2 bad 7 N-2 this is not right - 我只能访问第一个元素。但并非所有(因为元素的数量会因名称的不同值而异)。

现在,我想使用Comment中的值,然后将输出添加为数据框中的附加列(可以是新的DF)。

预期产出:

df.iloc[i]

1 个答案:

答案 0 :(得分:0)

您可以使用applyreset_index

df.groupby('Name').Comments.apply(pd.DataFrame.reset_index, drop=True).unstack()

enter image description here