如何找到数据帧行的平均值?

Кон*_*ков 2 python average mean dataframe pandas

df:

 A B  C D
 1 2  3 la
 0 1 -1 na
Run Code Online (Sandbox Code Playgroud)

如何找到这样的每一行的平均值?:

 A B  C  D  mean
 1 2  3  la    2
 0 1 -1  na    0
Run Code Online (Sandbox Code Playgroud)

我尝试过,但情况并非如此(:

 some_col = [A,B,C]
 for col in some_col:
    df['mean'] = [np.mean([x, y]) for x, y in zip(df[col], df['mean'])]
Run Code Online (Sandbox Code Playgroud)

小智 5

你应该尝试这个:

df.mean(axis=1)
Run Code Online (Sandbox Code Playgroud)

  • `df.mean(axis=1)` 实际上会起作用并忽略带有字符串的列 (`'D'`)。但是,您会收到一条警告,指出此行为已被弃用,并且将来会引发 TypeError,因此最好避免这种情况。如果您有一个类似“lst_cols = ['A','B','C']”的列表,请随后使用“df[lst_cols].mean(axis=1)”。或者,如果您愿意选择*所有*数字列,您可以使用`df.select_dtypes(include='number').mean(axis=1)`。 (2认同)