#### DataFrame * 三个基本属性:values,columns,index Pandas DataFrame.values属性返回对应的二维数组的numpy数值, Pandas DataFrame.columns属性返回给定Dataframe的列标签。return Index([], dtype='object') Pandas DataFrame.index属性返回给定Dataframe的行索引。 return Index([], dtype='object') * 其他属性 Pandas DataFrame.shape属性返回形状 * 索引方式 1. 列索引 (1)df.col_index_name : 对于DataFrame而言,列名就相当于df属性,返回Series类型 (2)df['col_index_name']: 字典方式,返回Series类型 2. 行索引 (1)df.loc['row_inde_name']: 返回Series类型, df.loc[[A,B,C]]可以返回多行数据,即DataFrame类型,也可以loc[A:C]切片索引 (2)df.iloc[n:m]: 隐式索引,左闭右开[n,m) 3. 元素索引 (1)使用列索引df['col_index_name']['row_index_name']: 可以直接修改某值 (2)使用行索引df.loc['row_index_name']['col_index_name']/df.loc['row_index_name','col_index_name'] (3)使用values取出某值df.values[row,index] : 取出第row行第index个 * 重置索引 1. 基本方法 df.index = [] df.columns = [] * 创建方式 1. 字典 列索引:不赋值时,字典的键(key),不匹配的单元填充为nan;若赋值,则为赋值给他的List 行索引:不赋值时,由DataFrame自动添加,默认从0开始;若赋值,则为赋值给他的List dict = {"col_index1": [x1, x2], "col_index2": [y1,y2]} df.DataFrame(dict, index=[A, B]) col_index1 col_index2 A x1 y1 B x2 y2 2. Series col1 = pd.Series({"row_index1":"v1", "row_index2":"v2"}) col2 = pd.Series({"row_index1":"v3", "row_index2":"v4"}) pd.DataFrame({"col_index1": col1, "col_index2":col2 }) col1_index1 col_index2 row_index1 v1 v3 row_index2 v2 v4 3. numpy数组 指定index和columns a = np.arrar([0,1],[2,3]) df.DataFrame(a, index=["A", "B"], columns=["X", "Y"]) X Y A 0 1 B 2 3
* dict保存到excel
import pandas as pd
# 创建空表格
nan_excel = pd.DataFrame()
nan_excel.to_excel("./test.xlsx")
# 打开表格保存指定dict
writer = pd.ExcelWriter("./test.xlsx")
pd.DataFrame(dict).to_excel(writer)
writer.save()