要按照列名的切片重塑DataFrame,可以使用Pandas库中的melt()函数。下面是一个包含代码示例的解决方法:
import pandas as pd
# 创建示例DataFrame
data = {
'ID': [1, 2, 3],
'Name': ['Alice', 'Bob', 'Charlie'],
'Maths': [80, 90, 75],
'English': [85, 95, 70],
'Science': [90, 80, 85]
}
df = pd.DataFrame(data)
# 使用melt()函数按照列名的切片重塑DataFrame
df = df.melt(id_vars=['ID', 'Name'], value_vars=['Maths', 'English', 'Science'],
var_name='Subject', value_name='Score')
# 打印重塑后的DataFrame
print(df)
输出结果:
ID Name Subject Score
0 1 Alice Maths 80
1 2 Bob Maths 90
2 3 Charlie Maths 75
3 1 Alice English 85
4 2 Bob English 95
5 3 Charlie English 70
6 1 Alice Science 90
7 2 Bob Science 80
8 3 Charlie Science 85
在上述代码中,首先创建了一个示例DataFrame。然后使用melt()函数将Maths
、English
和Science
这三列按照列名的切片重塑为一列Subject
和一列Score
的DataFrame。最后打印输出重塑后的DataFrame。
上一篇:按照列名称进行聚合
下一篇:按照列名将列表中的数据框命名