0

同样的问题已发布在 pydata google group 上。

我想做一个自定义连接,即使用按对象分组中的行来创建新的列。

这是一个人为的例子:

Input data frame
name age
foo     12
bar     14

df = pandas.DataFrame({  'name':['foo','bar'],'age': [12,14] })



expected output, a pandas data frame with four cols 
foo 12 bar 14

PS:我正在寻找一种有效的解决方案,因为这将应用于包含 800k 奇数分组的分组 pandas 对象。

样本 800k 数据将具有以下结构。我仍在使用类比,因为实际数据是科学的,列名可能不直观

Subject (grouped by col)
          Name     Age        mark1   
          Foo      12         80     
          Bar      14         90 

我们想要从这个按数据分组的是以下数据框

Subject Foo 12 80 Bar 14 90
4

1 回答 1

0

您想重塑 DataFrame 的值,以便:

In [43]: pandas.DataFrame(df[['name', 'age']].values.reshape(1, 4))
Out[43]:
     0   1    2   3
0  foo  12  bar  14

这应该是有效的,因为 reshape() 返回一个视图。学分@Wouter Overmeire

于 2013-05-15T14:28:11.070 回答