在熊猫0.25.3中,我不能减去稀疏数据帧的均值列。我尝试过:
<cfoutput>
<cfloop query="GetData">
#evaluate("#variabnas#")#
</cfloop>
</cfoutput>
但是我得到了
df_norm= df.sub(df.mean(axis=1), axis=0)
答案 0 :(得分:1)
如果使用较旧的Pandas SparseDataFrame
结构,则可能会出现此错误。但是,在最新的Pandas(我使用0.25.3)中,有另一种处理稀疏的方法,您的代码可以正常工作。考虑将您的数据框转换为现代的稀疏类型。参见https://pandas.pydata.org/pandas-docs/stable/user_guide/sparse.html#sparse-migration。
下面是一个有效的示例
df = pd.DataFrame (np.random.randint(0,100,(5,5)))
dtype = pd.SparseDtype(int, fill_value=0) # define sparse type
df = df.astype(dtype) # to new sparse type
print(df.sub(df.mean(axis=1), axis=0))
0 1 2 3 4
0 -28.6 43.4 -42.6 -14.6 42.4
1 29.4 25.4 -48.6 -4.6 -1.6
2 -12.4 52.6 -15.4 -17.4 -7.4
3 -20.8 -2.8 10.2 -6.8 20.2
4 35.8 -4.2 19.8 -16.2 -35.2