![](/img/trans.png)
[英]Subtracting values of a row for a specific column based on a specific condition in python dataframe
[英]Add a specific column values at the end of row in dataframe in Python
我有 Dataframe df,如下所示:对于每一行,如果第一个找到的列值为 None,则应由 dataframe 中的第 2 列值替换。
ID 1 2 col0 col1 col2 col3 col4 col5 col6
0 A1 ABC RED 10 20 None None None None None
1 B1 ABC ORANGE 40 None None None None None None
2 C1 ABC WHITE 50 34 35 57 78 98 None
3 D1 ABC BLUE 20 None None None None None None
我想要 output:
ID 1 col0 col1 col2 col3 col4 col5 col6
0 A1 ABC 10 20 RED
1 B1 ABC 40 ORANGE
2 C1 ABC 50 34 35 57 78 98 WHITE
3 D1 ABC 20 BLUE
想法是使用限制参数向前填充非缺失值,测试非缺失值并使用测试缺失值进行链接 - 因此掩码仅匹配None
s for append 来自第2
列的值由DataFrame.mask
与DataFrame.pop
最后替换None
379459C114ZEB8。通过DataFrame.fillna
:
m = df.ffill(axis=1, limit=1).notna() & df.isna()
df = df.mask(m, df.pop(2), axis=0).fillna('')
print (df)
ID 1 col0 col1 col2 col3 col4 col5 col6
0 A1 ABC 10 20 RED
1 B1 ABC 40 ORANGE
2 C1 ABC 50 34 35 57 78 98 WHITE
3 D1 ABC 20 BLUE
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.