gpt4 book ai didi

python - pandas:合并、连接和连接的第一步

转载 作者:太空宇宙 更新时间:2023-11-04 03:03:04 25 4
gpt4 key购买 nike

我有一个如下所示的数据框,它有 3 列和 12 行。 12 行是 4 个重复类(三次)。我知道我从来没有 1A、1D、2B 和 2D 单元格的值,而且我总是有 1B、1C、2A 和 2C 单元格的单元格值。

enter image description here

我想将它转换成如下所示的形式,我将列名和行名组合起来以提取我知道内部始终包含数据的所有单元格。这样我将避免不必要的重复或不必要的空单元格。

enter image description here

我已尝试阅读手册 http://pandas.pydata.org/pandas-docs/stable/merging.html ,但我有一些难以采取正确的方法。对我有什么建议吗?

非常感谢

最佳答案

您可以使用:

#get index to MultiIndex in column
df = df.set_index(['class','date']).unstack(level=0)
#remove columns with all NaN, sort index
df = df.dropna(axis=1, how='all').sort_index(ascending=False)
#reset MultiIndex in columns, cast int to str in first level (1,2 values)
df.columns = [''.join((str(col[0]),col[1])) for col in df.columns]
#index to column
df.reset_index(inplace=True)
#reorder columns
df = df[df.columns[1:].union(df.columns[:1])]
print (df)
1B 1C 2A 2C date
0 1.462543 4.920529 4.496126 3.362060e+08 2016-10-31
1 3.931170 3.439862 2.453640 1.488948e+00 2016-10-30
2 3.550311 3.504713 3.224958 1.804881e+00 2016-10-29

关于python - pandas:合并、连接和连接的第一步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40366773/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com