我有数据,我想让性别和年龄组扩展到整个数据集。以下是当前数据的外观,以及理想情况下的外观:
电流:
gender variable age
1
18-24 variabl1 0.6
variable2 0.3
25-39 variable1 0.1
variable2 0.3
40-50 variable1 0.1
variable2 0.30
2
18-24 variabl1 0.6
variable2 0.3
25-39 variable1 0.1
variable2 0.3
40-50 variable1 0.1
variable2 0.30
注意:我不想更改数据帧的物理结构(即重新排列列和行)
我在google上搜索了不少,但不幸的是,我没有找到任何有用的东西
为了达到我目前的状态,我只需完成一个雄性和雌性的替换,然后是一个groupby:
data['gender'].replace(['Male', 'Female'],[1,2], inplace=True)
df = data.groupby(['gender', 'age'])["variable"].value_counts(normalize=True)
理想:
gender variable age
1
1 18-24 variabl1 0.6
1 18-24 variable2 0.3
1 25-39 variable1 0.1
1 25-39 variable2 0.3
1 40-50 variable1 0.1
1 40-50 variable2 0.30
2
2 18-24 variabl1 0.6
2 18-24 variable2 0.3
2 25-39 variable1 0.1
2 25-39 variable2 0.3
2 40-50 variable1 0.1
2 40-50 variable2 0.30
我相信这会奏效的。问题是在重置索引时存在名称冲突。您需要将number的列重命名为其他列。我把它改名为“value”
相关问题 更多 >
编程相关推荐