gpt4 book ai didi

python - 如何正确索引二维数组 pandas dataframe?

转载 作者:太空宇宙 更新时间:2023-11-03 20:34:39 26 4
gpt4 key购买 nike

我正在将 .xslx Excel 文件读入 pandas 数据帧。

它是这样的:

Image Link

或者以文本形式:

         1           2           3          4
3.5 15.48403728 23.22605592 30.96807456 38.7100932
4 17.41954194 26.12931291 34.83908388 43.54885485
4.5 19.3550466 29.0325699 38.7100932 48.3876165
5 21.29055126 31.93582689 42.58110252 53.22637815

正如您所看到的,左上角的单元格中有一个空的空间。

行是金额,列是 Material ,值是价格。

我真的不知道如何正确命名以进行索引。

如果我想尝试

df.columns = ['Material 1',...'Material 4']

它会出错,因为显然它需要 5 个列标题,因为有 5 列。

我真正想要的是将左上角的列标记为数量/ Material 或类似的内容,但我不知道如何做到这一点。

我认为最好的方法是尝试将这个数据框转换成这样的东西:

Amount Material   Price
3.5 1 15.48...
3.5 2 23.22...
...
5 4 53.22...

因为这有望使其更容易处理。

知道如何做到这一点吗?

我相信这在 Excel 中称为 unpivot columns 或类似的东西???

最佳答案

我不确定您如何读取 Excel 文件,但如果您想要的只是重命名列,那么您可以在读取 Excel 本身时设置列名称。假设我的文件名是 MyExcelFile.xlsx,列名是“Amount”、“Material_1”、“Material_2”、“Material_3”和“Material_4”,那么我将按如下方式读取它。如果这些列名不存在(在 Excel 中),那么您必须显式传递 header=None。

MyDF = pd.read_excel('/FullPathToYourExcelFile/MyExcelFile.xlsx', names=['Amount','Material_1','Material_2','Material_3','Material_4'], header=None)

输出如下。

Output of the reading

请参阅此处的文档 ( https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_excel.html )。如果您已经按照我上面的建议完成了,那么很抱歉我低估了您的问题需求。祝一切顺利

关于python - 如何正确索引二维数组 pandas dataframe?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57243351/

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