我有这个数据帧:
df = [{'A1':10, 'A2':''}, {'A1':11,'A2':110}, {'A1':12,'A2':120}]
我想平均忽略''(空字符串)值的不同列。
这是所需的输出
df_AVG = [{'A1':10, 'A2':'','avg':10}, {'A1':11,'A2':110,'avg': 60.5}, {'A1':12,'A2':120,'avg':66}]
我可以使用以下代码执行此操作:
df['avg'] = df[['A1','A2']].mean(axis=1, numeric_only=True)
但是当我修改数据帧并且它包含多个空格时,如下所示
df = [{'A1':10, 'A2':''}, {'A1':'','A2':110}, {'A1':12,'A2':120}]
我运行相同的代码,输出是这样的。所有“avg”值都是 NaN,包括以前有效的值:
df_AVG = [{'A1':10, 'A2':'','avg':NaN}, {'A1':11,'A2':110,'avg': NaN}, {'A1':12,'A2':120,'avg':NaN}]
你能告诉我这种方法有什么问题吗?谢谢!
慕田峪4524236
慕哥6287543
相关分类