目录

axis0-和-axis1的区分设置matplotlib正常显示中文和负号

axis=0 和 axis=1的区分&&设置matplotlib正常显示中文和负号

axis=0axis=1 是用来指定操作的维度或轴的参数。

记忆方法
  • axis=0 :想象一个二维数组,沿着列方向(垂直方向)操作。
  • axis=1 :想象一个二维数组,沿着行方向(水平方向)操作。

1. NumPy 中的 axis 参数

在 NumPy 中, axis 参数用于指定操作的维度。对于二维数组(矩阵), axis=0 表示沿着列操作,而 axis=1 表示沿着行操作。

eg:
import numpy as np

# 创建一个 3x4 的二维数组
array = np.array([[1, 2, 3, 4],
                  [5, 6, 7, 8],
                  [9, 10, 11, 12]])

# 沿着列操作(axis=0)
print("沿着列求和 (axis=0):")
print(np.sum(array, axis=0))  # 输出:[15 18 21 24]

# 沿着行操作(axis=1)
print("沿着行求和 (axis=1):")
print(np.sum(array, axis=1))  # 输出:[10 26 42]
解释
  • axis=0 :沿着列操作,即对每一列进行操作。例如, np.sum(array, axis=0) 会对每一列的元素求和,结果是一个包含每列和的数组。
  • axis=1 :沿着行操作,即对每一行进行操作。例如, np.sum(array, axis=1) 会对每一行的元素求和,结果是一个包含每行和的数组。

2. Pandas 中的 axis 参数

在 Pandas 中, axis 参数用于指定操作的维度。对于 DataFrame, axis=0 表示沿着行操作(即对每一列进行操作),而 axis=1 表示沿着列操作(即对每一行进行操作)。

eg:
import pandas as pd

# 创建一个 DataFrame
data = {'A': [1, 2, 3],
        'B': [4, 5, 6],
        'C': [7, 8, 9]}
df = pd.DataFrame(data)

# 沿着行操作(axis=0)
print("沿着行求和 (axis=0):")
print(df.sum(axis=0))  # 输出:A    6
                       #        B   15
                       #        C   24

# 沿着列操作(axis=1)
print("沿着列求和 (axis=1):")
print(df.sum(axis=1))  # 输出:0    12
                       #        1    15
                       #        2    18
解释
  • axis=0 :沿着行操作,即对每一列进行操作。例如, df.sum(axis=0) 会对每一列的元素求和,结果是一个包含每列和的 Series。
  • axis=1 :沿着列操作,即对每一行进行操作。例如, df.sum(axis=1) 会对每一行的元素求和,结果是一个包含每行和的 Series。

3. 总结

  • axis=0 :沿着列操作,对每一列进行操作(在 NumPy 中是沿着列,在 Pandas 中是沿着行)。
  • axis=1 :沿着行操作,对每一行进行操作(在 NumPy 中是沿着行,在 Pandas 中是沿着列)。

设置matplotlib正常显示中文和负号

matplotlib.rcParams['font.sans-serif']=['SimHei']   # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False     # 正常显示负号