Select 列值的平均值
Select mean of the values column wise
我有一个数据集,其中有 5 列。考虑以下数据库:-
City
Vehicle
col3
col4
col5
Jaipur
Car
...
...
...
Jaipur
Car
...
...
...
Jaipur
Bike
...
...
...
Pune
Car
...
...
...
Mumbai
Bike
...
...
...
...
...
...
...
...
大约有 10000 条记录,其中城市有 5 个可能值,即斋浦尔、浦那、孟买、金奈、印多尔,而车辆可能有 3 个值汽车、自行车、Activa。
我在数据框上使用了pandas'分组函数
df.groupby(['City', 'Vehicle'])['col3'].count()
它给了我如下信息:-
City
Vehicle
col3
Jaipur
Car
50
Jaipur
Bike
40
Jaipur
Activa
60
Pune
Car
80
Pune
Bike
90
Pune
Activa
30
但我想要如下答案:-
City
Vehicle
col3
Jaipur
Car
0.33
Jaipur
Bike
0.27
Jaipur
Activa
0.4
Pune
Car
0.40
Pune
Bike
0.45
Pune
Activa
0.15
我无法理解如何在 pandas 中编写此代码。
如果您要指望 col3
(但仍分组在 City
下),请尝试以下操作:
df.groupby('City')['col3'].value_counts(normalize=True)
这将为您提供所需的相对部分(总和为 1)而不是实际计数。您也可以对其他列重复类似的操作。
我有一个数据集,其中有 5 列。考虑以下数据库:-
City | Vehicle | col3 | col4 | col5 |
---|---|---|---|---|
Jaipur | Car | ... | ... | ... |
Jaipur | Car | ... | ... | ... |
Jaipur | Bike | ... | ... | ... |
Pune | Car | ... | ... | ... |
Mumbai | Bike | ... | ... | ... |
... | ... | ... | ... | ... |
大约有 10000 条记录,其中城市有 5 个可能值,即斋浦尔、浦那、孟买、金奈、印多尔,而车辆可能有 3 个值汽车、自行车、Activa。
我在数据框上使用了pandas'分组函数
df.groupby(['City', 'Vehicle'])['col3'].count()
它给了我如下信息:-
City | Vehicle | col3 |
---|---|---|
Jaipur | Car | 50 |
Jaipur | Bike | 40 |
Jaipur | Activa | 60 |
Pune | Car | 80 |
Pune | Bike | 90 |
Pune | Activa | 30 |
但我想要如下答案:-
City | Vehicle | col3 |
---|---|---|
Jaipur | Car | 0.33 |
Jaipur | Bike | 0.27 |
Jaipur | Activa | 0.4 |
Pune | Car | 0.40 |
Pune | Bike | 0.45 |
Pune | Activa | 0.15 |
我无法理解如何在 pandas 中编写此代码。
如果您要指望 col3
(但仍分组在 City
下),请尝试以下操作:
df.groupby('City')['col3'].value_counts(normalize=True)
这将为您提供所需的相对部分(总和为 1)而不是实际计数。您也可以对其他列重复类似的操作。