[python 学习笔记] pandas 读取 excel

1. 读取文件 --- 已知sheet_name

import pandas as pd

# 读取excel -- 知道sheet name
df = pd.read_excel(文件名, sheet_name='Sheet1', index_col=0)
df

2. 读取文件 --- 不知道sheet_name

# 读取excel -- 不知道sheet name
xl = pd.ExcelFile(文件名)
names = xl.sheet_names
print(names)
df = xl.parse(names[-1])
print(df)

3. 读取某些列 - 不连续的列 

# 方法1: 读取excle中的某些列
df = pd.read_excel(文件名, sheet_name='Sheet1', index_col = 0, usecols=[0,1,2])
df
# 读取了前3列, 此处的第0列是index 列


# 方法2: 读取excle中不连续的行和列
df.loc[['java', 'php'], ['A', 'B']]

df.iloc[[1,2],[0,1]]

# 方法3: 读取某一列
df.A 
df['A']
df.loc[:, 'A']
df.iloc[:, 0]

# 方法4: 读取某一块数据
df.loc[:, 'A':'E']
df.iloc[:, 0:5]

# 方法5: 根据条件筛选
df[(df['price']>10) & (df['num']>40)

 4. 处理合并单元格

# 处理合并单元格
import pandas as pd

# 读取excel -- 知道sheet name
df = pd.read_excel(文件名, sheet_name='Sheet4', index_col=0)
df

[python 学习笔记] pandas 读取 excel_第1张图片

 

df.C = pd.Series(df.C).fillna(method='ffill')  # 按照第一个出现的值填充NaN
df

5. 删除都是NaN的列

# 删除都是NaN的列
df = df.dropna(axis=1, how='all')
df

 6. 将 DataFrame 转换成 字典

[python 学习笔记] pandas 读取 excel_第2张图片

 

# 将dataframe转成字典
d1 = df.to_dict()
d1

[python 学习笔记] pandas 读取 excel_第3张图片

 

# 将dataframe转成字典
d1 = df.to_dict('index')
d1

[python 学习笔记] pandas 读取 excel_第4张图片

你可能感兴趣的:(Python学习笔记)