[英]pandas groupby as list returns empty with both agg and apply function
當嘗試根據列組(即“master_mac”和“slave_mac”)將“rssi”列作為列表返回時,pandas 數據框返回空,下面是我的輸入數據框
master_mac slave_mac uuid rawData rssi
0 ac233fc01403 ac233f26492b e2c56db5 NaN -23
1 ac233fc01403 ac233f26492b e2c56db5 NaN -28
2 ac233fc01403 ac233f26492b e2c56db5 NaN -32
3 ac233fc01403 ac233f26492b e2c56db5 NaN -37
4 ac233fc01403 e464eecba5eb NaN 590080 -25
5 ac233fc01403 ac233f26492b e2c56db5 NaN -29
6 ac233fc01403 ac233f26492b e2c56db5 NaN -31
7 ac233fc01403 ac233f26492b e2c56db5 NaN -30
結果應該是,
master_mac slave_mac uuid rawData rssi
0 ac233fc01403 ac233f26492b e2c56db5 NaN [-23,-28,-32,-37,-29,-31,-30]
1 ac233fc01403 e464eecba5eb NaN 590080 [-25]
而當我使用時,
df.groupby(['master_mac', 'slave_mac','uuid','rawData'])['rssi'].apply(list)
同樣的回報,
Series([], Name: rssi, dtype: float64)
在使用申請時,
df.groupby(['master_mac','slave_mac','uuid','rawData']).apply(lambda x: x['rssi'].values)
它返回為,
Empty DataFrame
Columns: []
Index: []
在使用 agg 時,
df.groupby(['master_mac','slave_mac','uuid','rawData']).agg(lambda x: list(x))
返回為,
Empty DataFrame
Columns: []
Index: []
嘗試
df.groupby(['master_mac', 'slave_mac','uuid','rawData'])['rssi'].agg(lambda x: list(x))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.