1

DataFrameによって返されたを転置する方法はconcat()?

df = DataFrame([
            dict(a=1, b=10, c=41),
            dict(a=1, b=20, c=42),
            ])

concat([df, df]).T

私は得る:

AttributeError: 'DataFrame' object has no attribute 'dtypes' !

私が試してみると:

concat([df, df]).T.to_dict()

私は得る:

RuntimeError: maximum recursion depth exceeded in cmp

これは、インデックスで導入された重複に関連していると思いますconcat()が、回避策は見つかりませんでした。

4

1 に答える 1

1

次を使用して階層インデックスを指定できますkeys

In [288]: concatenated = concat([df,df], keys=['first', 'second'])

In [289]: print concatenated.T
   first      second    
       0   1       0   1
a      1   1       1   1
b     10  20      10  20
c     41  42      41  42

In [290]: print concatenated.T.to_dict().values()
[{'a': 1, 'c': 41, 'b': 10}, {'a': 1, 'c': 41, 'b': 10}, {'a': 1, 'c': 42, 'b': 20}, {'a': 1, 'c': 42, 'b': 20}]
于 2012-10-09T10:58:45.397 に答える