python-pandas常用数据操作
数据示例:
导入excel
读取excel,以excel的首行为表头、首列为索引
import pandas as pd df = pd.read_excel(服务进口.xls, index_col=0, header=0)
读取行名/列名
- 获取行名:df.index.values
- 获取列名: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]]
以上各种读取方式可以结合使用
