pandas中apply函数的参数问题


import pandas as pd
import numpy as np

matrix = [
    [1,2,3],
    [4,5,6],
    [7,8,9]
]

df = pd.DataFrame(matrix, columns=list('xyz'), index=list('abc'))
df.apply(np.square)

df.apply(lambda x : np.square(x) if x.name == 'a' else x, axis=1)

就是关于最后一行代码的,对于Name属性我了解到的是会返回元素的列标签,但是运行上面会把第一行全部平方,其它不变,加上这个axis=1就是表示获取name属性后,不再返回列标签而是行标签名??