python-pandas常用数据操作

数据示例:

导入excel

读取excel,以excel的首行为表头、首列为索引

import pandas as pd

df = pd.read_excel(服务进口.xls, index_col=0, header=0)

读取行名/列名

  1. 获取行名:df.index.values
  2. 获取列名:df.columns.values

读取行数据

(一)标签读取 loc

1. 单行

#读取中国所在的行数据
data = df.loc["中国"]

2.连续多行

#读取“中国-法国”之间的行数据
data = df.loc[中国:法国]

3.非连续多行

#读取“中国、德国、法国”3行数据
data = df.loc[[中国,德国,法国]]

(二)索引读取 iloc

1. 单行

#读取行索引为42的一行数据
data = df.iloc[42]

2.连续多行

#读取行索引为42-79的连续多行数据
data = df.iloc[42:79]

3.非连续多行

#读取行索引为40、55、77的3行数据(中国、德国、法国)
data = df.iloc[[40, 55, 77]]

读取列数据

(一) 标签读取 loc

1. 单列

#读取1990年的一列数据
data = df[1990]

2.连续多列

#读取1990年-2000年之间的连续多列数据
data = df.loc[:, 1990:2000]

2.非连续多列

#读取1990年、1995年、2000年之间的连续多列数据
data = df.loc[:, [1990,1995,2000]]

(二) 索引读取 iloc

1. 单列

#读取列索引为30的一列数据(1990年)
data = df.iloc[:, 30]

2.连续多列

#读取列索引为30-41的连续多列数据(1990年-2000年)
data = df.iloc[:, 30:41]

3.非连续多列

#读取列索引为30、35、40的3列数据(1990年、1995年、2000年)
data = df.iloc[:, [30, 35, 40]]

读取区域数据(行列相交)

(一) 标签读取(普通索引) loc

1.连续行列

#读取中国-法国、1990年-2000年的连续数据
data = df.loc[中国: 法国, 1990: 2000]

2.非连续行列

#读取中国、德国、法国,1990年、1995年、2000年的指定行列数据
data = df.loc[[中国, 德国, 法国], [1990, 1995, 2000]]

(二) 索引读取(切片索引) iloc

1.连续行列

#读取行索引为40-78,列索引为30-41的区域数据
data = df.iloc[40:78, 30:41]

2.非连续行列

#读取行索引为40、55、77的3行,列索引为30、49的2列区域数据
data = df.iloc[[40, 55, 77], [30, 40]]
以上各种读取方式可以结合使用
经验分享 程序员 微信小程序 职场和发展