python - Python Pandas:索引重叠?怎么修
问题描述
我在导入天气数据后创建了一个数据框,现在称为“天气”。
最终目标是能够查看特定月份和年份的数据。
然后我跑来weather = weather.T
变换图形,使它看起来像:
然后我跑来weather.columns=weather.iloc[0]
使图表看起来像:
但是“年”列和“月”列位于索引中(我认为?)。我将如何得到它,它看起来像:
感谢您的关注!将不胜感激任何帮助:)
请注意,我将删除其中包含年份的第一行。所以不要担心这部分
解决方案
这只是意味着你的pd.Index
对象底层的pd.DataFrame
对象,你不知道,有一个名字:
df = pd.DataFrame({'YEAR': [2016, 2017, 2018],
'JAN': [1, 2, 3],
'FEB': [4, 5, 6],
'MAR': [7, 8, 9]})
df.columns.name = 'month'
df = df.T
df.columns = df.iloc[0]
print(df)
YEAR 2016 2017 2018
month
YEAR 2016 2017 2018
JAN 1 2 3
FEB 4 5 6
MAR 7 8 9
如果这真的让您感到困扰,您可以使用reset_index
将您的索引提升到一个系列,然后删除额外的标题行。您可以同时删除列名:
df = df.reset_index().drop(0)
df.columns.name = ''
print(df)
month 2016 2017 2018
1 JAN 1 2 3
2 FEB 4 5 6
3 MAR 7 8 9
推荐阅读
- javascript - 从另一个类中的函数获取返回值
- java - Java - 在 Web 服务调用上覆盖 WebRequest
- android - 如何在 TextInputLayout unfocus 中更改边框和颜色?
- c# - 为什么这个网络服务器会忽略我的 POST 请求,而是向我发送正常 GET 请求会得到的信息?
- reactjs - 在 map 函数中调用 useState 钩子导致无限循环
- reactjs - 对象不支持属性或方法“条目” - IE11 中的错误
- python-3.x - Python - 让用户输入一个函数
- excel - VBA 通过选择单元格在列表中打开 PDF
- swift - 如何在 Xcode 中的 UITest 目标中链接自定义框架 - 另一个“未加载库 - @rpath” - 问题
- c# - 如果我输入负数,控制台应该抛出异常但它不起作用。我在这里错过了什么吗?