Python Panda将表格数据转换为列格式数据
我有下面的表格数据,我想转换为底部的格式,以便我可以加载到我的数据库 我如何通过使用熊猫来实现它 我正在使用Python,但也欢迎使用excel方法 您需要:Python Panda将表格数据转换为列格式数据,python,pandas,Python,Pandas,我有下面的表格数据,我想转换为底部的格式,以便我可以加载到我的数据库 我如何通过使用熊猫来实现它 我正在使用Python,但也欢迎使用excel方法 您需要: data.set_index(['date']).stack(dropna=False).reset_index(name='Number').rename(columns={'level_1':'Item'}) 输出: date Item Number 0 1 A NaN 1 1 B 12.0 2
data.set_index(['date']).stack(dropna=False).reset_index(name='Number').rename(columns={'level_1':'Item'})
输出:
date Item Number
0 1 A NaN
1 1 B 12.0
2 1 C 10.0
3 1 D NaN
4 2 A 10.0
5 2 B 30.0
6 2 C NaN
7 2 D NaN
8 3 A NaN
9 3 B NaN
10 3 C NaN
11 3 D 90.0
使用“<代码>空值”填充空白,然后依次执行。最后,使用
df.rename()
或本文中的更多详细信息,将列重命名为所需的列名称
你能复制粘贴你的数据,而不是图像吗?其他人更容易简单地使用该数据而不是图像中显示的数据。例如,您正在谈论:
df.melt(id_vars='Date',value_vars=['A','B','C','D',value_name='Number')
In []: df
Out[]:
Date A B C D
0 1 NaN 54.0 435 NaN
1 2 23.0 3.0 345 NaN
2 3 43.0 4.0 78 NaN
3 4 4.0 NaN 423 NaN
4 5 34.0 54.0 4 45.0
5 6 NaN 54.0 3 87.0
In []: (
...: df.fillna('NULL')
...: .melt(id_vars='Date', value_vars=['A','B','C','D'])
...: .set_index('Date')
...: .rename(columns={'variable':'Item', 'value':'Number'}))
...: )
Out[]:
Item Number
Date
1 A NULL
2 A 23
3 A 43
4 A 4
5 A 34
6 A NULL
1 B 54
2 B 3
3 B 4
4 B NULL
5 B 54
6 B 54
1 C 435
2 C 345
3 C 78
4 C 423
5 C 4
6 C 3
1 D NULL
2 D NULL
3 D NULL
4 D NULL
5 D 45
6 D 87