四处寻找,无果。我有一个Pandas数据框describe(),其中包含名为Height、Weigh、Mass的3列,并为了保持简短而列出了由describe()生成的平均值、标准差、最小值、最大值等统计数据列表。请注意,此数据框是由大约 1000 个相同类型数据的文件之一的内容创建的,每个文件最多包含 50 到 200 行或更多行数据,其中有 13 列,在本例中我仅显示 3 列。 我需要将各个 y 列的 x 行统计数据数组转换为一行数据和一行标题的数据帧。 例如。
Height Weight Mass
Mean 5 8 12
std 2 1 3
min 3 5 6
max 7 10 13.5
希望我的输出如下
Height-mean Height-std Height-min Height-max Weight-mean Weight-std Weight-min Weight-max..... .......on to the 3rd column
5 2 3 7 8 1 5 10 ......
所以本质上是标题和行(统计标签)的串联...最终我想将这个2行表或至少数据行输出到csv并运行所有文件(参见上面最多大约1000个并附加他们的数据到 csv,然后导入该文件,这样我就可以找到具有各个列的最佳值的文件。也许我正在吃午饭,不知道如何执行此要求,并且完全错误地执行它,但是我认为这可以用 python 实现。
我尝试在这个网站和其他围绕 python 包的网站上搜索几个小时,但似乎 pandas 应该能够做到这一点,但即使我认为我有人问类似的问题,它似乎也没有得到正确的回答。感谢您在此事上提供的任何专业知识
用途:
out = df.unstack().to_frame().T
out.columns = out.columns.map(lambda x: f'{x[0]}-{x[1]}')
print (out)
Height-Mean Height-std Height-min Height-max Weight-Mean Weight-std \
0 5.0 2.0 3.0 7.0 8.0 1.0
Weight-min Weight-max Mass-Mean Mass-std Mass-min Mass-max
0 5.0 10.0 12.0 3.0 6.0 13.5