「Python数据分析」Pandas基础,通过索引选择数据
原始数据
处理过程
1、通过函数,生成上图所示的原始数据集
2、选择某一单元格中的值
3、交换数据集中A、B列的值
4、选择A列和B列,形成新的数据集
处理过程1
新建文件夹和Python笔记本源程序,导入pandas和numpy,运行单元格,如下图所示。
这里,我们需要使用numpy库,来辅助生成原始数据集。没有安装numpy库的话,用下列命令安装好。
新建日期索引列dates,然后通过np.random.randn函数,生成一个8行4列的数据集,并且把dates作为索引列,列名用columns参数进行设置。
处理过程2
我们这里介绍了几种获取单元格数据的方法,大家可以根据需要,选择使用合适的方法。
首先,通过中括号[]加列名'A'的方式,在数据集df中,获取A列,复制给s变量。
其次,获取时间索引dates变量的第五个索引,通过中括号加数字的方式获取,赋值给index时间索引变量index。
最后,通过时间索引的方式,获取到单元格的具体数值。
我们也可以直接通过索引数值的方式,也就是s[5]的方式,直接拿到单元格的数值。这里要注意,[5]代表从上到下,依次顺序的第6行。因为索引数值是从0开始计数的,所以第6行的索引数值是5。
我们还可以直接从df变量中,获取单元格的数值。df['A'][5]中,从左到右,第一个中括号代表选取A列,第二个中括号,代表选取第A列的第6行单元格的数值。
处理过程3
我们通过选取df数据集的A列和B列,直接赋值给df变量的B列和A列
由于DataFrame的列是数组类型,所以这里需要使用两个中括号进行嵌套。
执行以上代码,对照原始数据集,可以看到,A列和B列的数据,已经完成交换。
处理过程4
选择A列和B列,形成新的数据集变量,有三种方式可供使用。
首先,直接通过列名的数组,从df变量中进行选择。
把选择好的变量,赋值给df1,这是第一种方式。
其次,通过DataFrame的loc函数,进行选取
这里,loc函数代码的中括号中,逗号前面的分号,表示选择所有行。逗号后面的数组,表示需要选取的列。这是第二种方式。
最后,通过DataFrame的iloc函数,进行选取
这里的iloc函数和loc函数,实现的方式差不多。差别在于,loc函数的列,是用字符串数组来进行选取的。而iloc函数的列,是用索引数组下标来进行选取的。
大家要注意loc和iloc函数的细微差别,loc函数的行和列,是用行和列的名称,字符型string变量来选取。iloc函数的行和列,是用行和列对应的索引数组下标来选取,是整数型int变量。