写点什么

python 数据分析 -pandas 增删改查

作者:AIWeker
  • 2022-11-26
    福建
  • 本文字数:702 字

    阅读完需:约 2 分钟

python数据分析-pandas增删改查

当我们把数据放入 DataFrame 后,要数据分析就需要对数据进行进行各种操作,最常见的操作就是增删改查,特别是查,查进一步就是探查分析。

1. pandas 读取数据

import pandas as pdframe = pd.read_csv('./test.csv', header=None, columns=['state', 'year', 'pop'])frame.index = frame['state']
复制代码


2. pandas 查

查询 pandas 有很多不同的方式,pandas 处理的数据为表格形式,即行列式,访问数据既可以通过行和列组合来访问。


  • 按行访问和按列访问

  • pandas 可以按照行号的切片方式来访问,如frame[0:4] 获取前 5 行数据 pandas 通过列名直接筛选多列的数据如frame[['pop', 'year']]获取 pop 和 year 列

  • loc 和 iloc 行列组合访问 loc 是按照索引名称和列名进行查询行列数据;iloc 是按照行列整数来进行查询行列数据


    # 访问索引为Ohio的行,year和pop列    frame.loc['Ohio', ['year', 'pop']]
# 访问year和pop列的所有行 frame.loc[:, ['year', 'pop']]
# 访问前4行 frame.iloc[0:3,]
# 访问前4行,第3列 frame.iloc[0:3, 2]
复制代码


  • 条件查询

  • 最常用的条件查询方式是通过列名直接比较,如

  • frame[frame['year'] > 2001] 表示 year 这一列大于 2001 的所有行

  • 另一种等价的写法为 query: frame.query('year > 2001')

3. pandas 增删改

pandas 增加行和列的方式可以通过增加一个 Series 的方式


  • 增加一列


frame['age'] = frame['year'] - 1900
复制代码


  • 增加一行


frame.loc[len(frame.index)] = ['1', 2, 4]
复制代码


删除行和列


# 删除列(按照列名)frame.drop(['age'], axis=1)
# 删除行(按照行的索引)frame.drop(['Ohio'], axis=0)frame.drop([6], axis=0)
复制代码


# 替换第一行frame[0:1] = [ 2, 1.2, 20]
# 修改第二行第3列frame.iloc[1, 2] = 4
复制代码


发布于: 刚刚阅读数: 5
用户头像

AIWeker

关注

InfoQ签约作者 / 公众号:人工智能微客 2019-11-21 加入

人工智能微客(aiweker)长期跟踪和分享人工智能前沿技术、应用、领域知识,不定期的发布相关产品和应用,欢迎关注和转发

评论

发布
暂无评论
python数据分析-pandas增删改查_Python_AIWeker_InfoQ写作社区