Mah*_*a M 6 python nan python-3.x pandas
我有数据框,即
Input Dataframe
class section sub marks school city
0 I A Eng 80 jghss salem
1 I A Mat 90 jghss salem
2 I A Eng 50 Nan salem
3 III A Eng 80 gphss Nan
4 III A Mat 45 Nan salem
5 III A Eng 40 gphss Nan
6 III A Eng 20 gphss salem
7 III A Mat 55 gphss Nan
Run Code Online (Sandbox Code Playgroud)
当“班级”和“部分”列中的值匹配时,我需要替换“学校”和“城市”中的“南”。最终结果应该是输入数据框
class section sub marks school city
0 I A Eng 80 jghss salem
1 I A Mat 90 jghss salem
2 I A Eng 50 jghss salem
3 III A Eng 80 gphss salem
4 III A Mat 45 gphss salem
5 III A Eng 40 gphss salem
6 III A Eng 20 gphss salem
7 III A Mat 55 gphss salem
Run Code Online (Sandbox Code Playgroud)
有人可以帮我吗?
对于每个组合,每组相同的值必须lambda function
在列表中指定的列中使用DataFrame.groupby
- 向前和向后填充缺少的每组缺失值:
cols = ['school','city']
df[cols] = df.groupby(['class','section'])[cols].apply(lambda x: x.ffill().bfill())
print (df)
class section sub marks school city
0 I A Eng 80 jghss salem
1 I A Mat 90 jghss salem
2 I A Eng 50 jghss salem
3 III A Eng 80 gphss salem
4 III A Mat 45 gphss salem
5 III A Eng 40 gphss salem
6 III A Eng 20 gphss salem
7 III A Mat 55 gphss salem
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
320 次 |
最近记录: |