Pandas 的使用
1. 访问df结构中某条记录使用loc或者iloc属性。loc是按照index或者columns的具体值,iloc是按照其序值。访问类似于ndarray的访问,用序列分别表示一维和二维的位置。
例如:missing_data.loc['MasVnrType'] 访问index为'MasVnrType'的行(如果有多行,才需要两对中括号,里面的中括号表示index列表
missing_data.loc['MasVnrType', 'Total'] 用来访问index为'MasVnrType',columns为'Total'的数据
missing_data.loc[['MasVnrType', 'MasVnrArea'], ['Total']] 访问index为'MasVnrType', 'MasVnrArea', columns为'Total'的数据
missing_data.iloc[[1]] 表示index序值为1的记录(0-indexed)
In [1]: df = DataFrame(randn(5,2),index=range(0,10,2),columns=list('AB')) In [2]: df Out[2]: A B 1.068932 -0.794307 -0.470056 1.192211 -0.284561 0.756029 1.037563 -0.267820 -0.538478 -0.800654 In [5]: df.iloc[[2]] Out[5]: A B -0.284561 0.756029 In [6]: df.loc[[2]] Out[6]: A B -0.470056 1.192211
2. 对数据变量进行标准正态化分布类 sklearn.preprocessing.StandardScaler http://sklearn.lzjqsdd.com/modules/preprocessing.html
3. Pandas 中的空值用 None 表示
4. 两个逻辑值序列求交或者并用 & 符号或者 | 符号
5. NaN 参与数值运算的结果仍然为 NaN
6. 如果需要在 IPython Notebook 中显示作图,需要加上 %matplotlib inline
7. 将属性值作为列名进行行列转换
1. MultiIndex 对象
构建有两种方式,一种是通过 index 元组的方式,一种是通过多维列表交叉组合的方式。
2. 在通过 Series 的 unstack 方法将某一级标签转换到 columns 上。
level 参数指定转换的标签级,-1表示最里面一级。
8. 如何改变 index 或 columns 的顺序
1. 一种方式是通过 reindex_axis 函数
2. 另外一种方式是通过重新赋值来改变
test_df = test_df[train_df.columns]
改变 index 顺序:test_df = test_df.loc[index]
9. 将带有 multi-level index 的 DataFrame 对象的 index 转换为对应的 columns 插入到原本的 DataFrame 中。
pd.DataFrame.reset_index() 函数可以完成上述功能
也可以时使用 MultiIndex 对象的 to_frame() 函数直接将 MultiIndex 转换为 DataFrame。