pandas 中DataFrame的数据定义,访问,修改,删除,增加,遍历

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/meiqi0538/article/details/82533499

本文测试使用Pandas使用的是Spyder,python3.6版本,已经安装好pandas包。

DataFrame数据框是用于存储多行和多列的数据集合(可以联想到excel中的表格)。

数据的定义:

from pandas import DataFrame

#定义一个数据框
df=DataFrame(
        data={
        'age':[18,19,20],
        'name':['jack','mick','john']
                })

这里写图片描述

索引默认为数字。

自定义索引

df=DataFrame(
        data={
        'age':[18,19,20],
        'name':['jack','mick','john']},
         index=['first','second','third'])

数据访问:

按列访问:df['age']

按行访问:df[1:2]获取的是第二行(索引1为)

按行列号访问:df.iloc[0:1,0:1]访问的是第一行第一列的内容

按行索引,列名访问:df.at['first','name']访问的是行名为first,列名为name的数据,如果没有设置则将’first’换为索引值即可,如果设置列名不可以使用索引值。

表格修改:

修改列名:(获取列名:df.columns)df.columns=['age2','name2']

修改行索引:(获取行索引:df.index) df.index=range(1,4)

数据删除:

根据行索引删除:df.drop(1)删除行索引为1的数据,其中还有一个参数axis 默认为0

根据列名删除:df.drop("age2",axis=1)删除列名为age2的数据;或者使用del df['age2']

数据添加:

增加行:df.loc[len(df)]=[22,'jackpi'](这种方法效率比较低,不应该出现在遍历中),也可以使用这个方法取更改数据(覆盖原来的数据)。

增加列:df['newcol']=[1,2,3,4],注意添加的数据要和行数相同。

数据的遍历:

遍历列:

for cName in df:
    print('df中的列名:\n',cName)
    print('df中的值:\n',df[cName])

结果:

这里写图片描述

遍历行(1):

for rIndex in df.index:
    print('现在是第',rIndex,'行')
    print(df.loc[rIndex])

遍历行(2):

for r in df.values:
    print(r)

返回结果为数组:

[18 'jack']
[19 'mick']
[20 'john']

遍历行(3):

for index,row in df.iterrows():
    print('第',index,'行')
    print(row)

这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/meiqi0538/article/details/82533499
今日推荐