用法:
DataFrame.T
转置索引和列。
通过将行写为列将DataFrame反映在其主要对角线上,反之亦然。属性
T
是该方法的访问者transpose()
。参数:
- *args:tuple, 可选参数
接受与NumPy的兼容性。
- copy:bool, 默认为 False
是否在转置后复制数据,即使对于具有单个dtype的DataFrame也是如此。
请注意,对于混合dtype DataFrame或具有任何扩展名类型的DataFrame,始终需要副本。
返回值:
- DataFrame
转置的DataFrame。
注意:
转换带有混合dtypes的DataFrame将导致具有objectdtype。在这种情况下,始终会复制数据。
例子:
具有齐次dtype的Square DataFrame
>>> d1 = {'col1': [1, 2], 'col2': [3, 4]} >>> df1 = pd.DataFrame(data=d1) >>> df1 col1 col2 0 1 3 1 2 4
>>> df1_transposed = df1.T # or df1.transpose() >>> df1_transposed 0 1 col1 1 2 col2 3 4
当dtype在原始DataFrame中是同构的时,我们将获得具有相同dtype的转置DataFrame:
>>> df1.dtypes col1 int64 col2 int64 dtype:object >>> df1_transposed.dtypes 0 int64 1 int64 dtype:object
具有混合dtypes的非方形DataFrame
>>> d2 = {'name': ['Alice', 'Bob'], ... 'score': [9.5, 8], ... 'employed': [False, True], ... 'kids': [0, 0]} >>> df2 = pd.DataFrame(data=d2) >>> df2 name score employed kids 0 Alice 9.5 False 0 1 Bob 8.0 True 0
>>> df2_transposed = df2.T # or df2.transpose() >>> df2_transposed 0 1 name Alice Bob score 9.5 8 employed False True kids 0 0
当DataFrame具有混合dtypes时,我们将得到一个转置后的DataFrame与objectdtype:
>>> df2.dtypes name object score float64 employed bool kids int64 dtype:object >>> df2_transposed.dtypes 0 object 1 object dtype:object
相关用法
注:本文由纯净天空筛选整理自 pandas.DataFrame.T。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。