Pandas DataFrame 保留最早的列值
Pandas DataFrame keep earliest column with values
我正在使用 NUTS3 级别的人口统计数据数据帧,不同地区以不同的时间间隔报告数据。我总是想要最新的数据,年份因地区而异。
数据可能如下所示
|
region|2015|2014|2013|
AT201 | 101| 100| |
AB301 | | 123| 456|
AB302 | | | 234|
如何将年份列合并为一个包含最新数据的列,例如
region|newest_data|
AT201 | 101|
AB301 | 123|
AB302 | 234|
下面一张link为实际数据截图
https://i.stack.imgur.com/AUP3A.png
非常感谢任何提示或指示!
将 not years 列转换为按 DataFrame.set_index
索引,回填缺失值,select 第一列,重命名并转换为 DataFrame
:
df = df.set_index(['region']).bfill(axis=1).iloc[:, 0].rename('newest_data').reset_index()
我正在使用 NUTS3 级别的人口统计数据数据帧,不同地区以不同的时间间隔报告数据。我总是想要最新的数据,年份因地区而异。
数据可能如下所示 |
region|2015|2014|2013|
AT201 | 101| 100| |
AB301 | | 123| 456|
AB302 | | | 234|
如何将年份列合并为一个包含最新数据的列,例如
region|newest_data|
AT201 | 101|
AB301 | 123|
AB302 | 234|
下面一张link为实际数据截图 https://i.stack.imgur.com/AUP3A.png
非常感谢任何提示或指示!
将 not years 列转换为按 DataFrame.set_index
索引,回填缺失值,select 第一列,重命名并转换为 DataFrame
:
df = df.set_index(['region']).bfill(axis=1).iloc[:, 0].rename('newest_data').reset_index()