我一直很困惑python轴是如何定义的,以及它们是指DataFrame的行还是列。考虑下面的代码:
>>> df = pd.DataFrame([[1, 1, 1, 1], [2, 2, 2, 2], [3, 3, 3, 3]], columns=["col1", "col2", "col3", "col4"])
>>> df
col1 col2 col3 col4
0 1 1 1 1
1 2 2 2 2
2 3 3 3 3
因此,如果我们调用df.mean(axis=1)
,我们将得到各行的平均值:
>>> df.mean(axis=1)
0 1
1 2
2 3
然而,如果我们调用df.drop(name, axis=1)
,我们实际上丢弃了一列,而不是一行:
>>> df.drop("col4", axis=1)
col1 col2 col3
0 1 1 1
1 2 2 2
2 3 3 3
有人能帮我理解一下pandas/numpy/scipy中的“轴”是什么意思吗?
顺便说一句,DataFrame.mean
的定义可能有误。它在DataFrame.mean
的文档中说,axis=1
应该表示列的平均值,而不是行的平均值……
https://stackoverflow.com/questions/25773245
复制相似问题