pandas concat_pandas的增删查改

pandas是为了解决数据分析任务而生的。pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法,能很好的帮助我们分析爬取到的数据。

环境准备

pandas、numpy

本篇所有代码都运行在jupyter上

目录

1、增加数据

2、删除数据

3、查询数据

4、修改数据

准备工作

先生成两个数据集

data 

1、增加数据

合并数据

  • 方法一:用concat合并
pandas.concat(objs,axis = 0,ignore_index = False,keys = None)

objs:Series,DataFrame或Panel对象的序列或映射。

axis:串联的轴,默认为0,即以索引串联(竖直拼接);如果为1,则以列串联(水平拼接)

ignore_index:清除现有索引并将其重置,默认为False。

key:在数据的最外层添加层次结构索引。

data_new = pd.concat([data, data2], axis=1)

运行结果:

0c4ee4c4300c3ac7b0d915bd0008ba65.png
  • 方法二:用merge合并
DataFrame.merge(self,right,how =‘inner’,on = None)

right:指要合并的对象

on:指要加入的列或索引级别名称,必须在两个DataFrame中都可以找到。

how:决定要执行的合并类型:left(使用左框架中的键)、right、inner(交集,默认)、outer(并集)

data.merge(data2,on='city',how='left')

运行结果:

0a4f90eb59e663ac18cbbbbc056a9ec7.png
  • 方法三:用join合并

这种方法需要指定相同列索引的后缀

1、

data.join(data2,lsuffix='_data', rsuffix='_data2')

运行结果:

010f0853ac70409db572b1b7a7b12c20.png

2、

data.set_index('city').join(data2.set_index('city'))

运行结果:

be8ddca9511d8127433038c6686d38bc.png
  • 方法四:用append合并
data.append(data2)

运行结果:

c4e4a24390fae0fe83a4baa8e9b54bd0.png
  • 增加列
city = ['南京', '杭州', '合肥', '青岛']
data.insert(0,'city2', city)

在第0列,加上column名称为city2,值为city的数据。

运行结果:

181ca7bfe7fa893ebf9bc2339c700ca8.png

2、删除数据

  • 删除包含某值的行
data1 = data2[data2.city != '深圳'] 

去掉city为深圳的行

运行结果:

618487fc7aacf8d0a40db80787691fe9.png
  • 删除行
data2.drop([0, 1], axis=0)

运行结果:

664a7506a83cf3a75e4c697e5c0f6c0b.png
  • 删除列
data2.drop(['city'], axis=1)

运行结果:

03ef9c3b4c1d1125d2e26637e2f4689c.png
  • 删除重复行
data['city'].drop_duplicates()

默认删除后面出现的重复值,即保留第一次出现的重复值

3、查询数据

  • 1、data['column_name'] 和data[row_start_index, row_end_index]
  • 2、data.loc[index,column]
  • 3、iloc[row_index, column_index]
  • 查看单列
data['city']

运行结果:

4d5fd5f2738a922e7db2e6d37d2f7490.png
  • 查看多列
data[['city', '2018']]

运行结果:

6695db9fbeb8591eecb4e8386f98b5e2.png
  • 查看行
data.loc[2]

运行结果:

409214381f19f66d935ff0479d6f95cd.png
data.loc[1:1]

运行结果:

e47cb0d8ca9598a3e5185fd8b200d71d.png
  • 查看多行
data.loc[1:]

运行结果:

71e4a81a719af8582fbafc56d3cd99e5.png

data.iloc[1:,:1]

运行结果

422bbcc3a66bcb5de6938602d8bee6ad.png
data.iloc[[1,3],:2]

运行结果:

eb9405614eaf6e35871c3c10c9c0f60d.png

4、修改数据

  • 修改某个数据
data.iloc[1,1] = 100

运行结果:

9956a708c8a93d8f70a320d3805f4850.png
data.loc[2,'city'] = '广州(粤语)'

运行结果:

21ec1be219aefd535c784f229c1644b6.png
  • 修改某列数据
data.iloc[:,1] = [1, 10, 100, 1000]

运行结果:

06c24d3c2aa4b4147acffeeb64d26832.png
  • 修改某行数据
data.iloc[3,:] = ['深圳(普通话)', 1100]

运行结果:

2a79e85b07e6714433994a8723da8981.png

如果对你有帮助的话给我点赞呗


http://www.niftyadmin.cn/n/793220.html

相关文章

曲线结果相似度_交联型POE胶膜的力学性能与交联度的对应关系研究

随着传统化石能源日渐枯竭,太阳能作为清洁能源,因其取之不尽的特点,越来越受到人们的青睐,发展太阳能已成为实现能源可持续发展,造福全人类的新方向。在太阳能应用中,光伏发电的发展受到格外关注。光伏组件…

MFC多线程编程注意事项

MFC多线程编程注意事项PeterLee整理 2008-05-261. 表现——错误示例关于启动线程时传输窗口对象(指针?句柄?)的问题: 在选择菜单中的开始线程后: void cmainframe::onmenu_start() { ... …

js正则表达式速成教程

正则表达式可以:•测试字符串的某个模式。例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式。这称为数据有效性验证•替换文本。可以在文档中使用一个正则表达式来标识特定文字,然后可以全部将其…

两款能够直接操作画面内容的播放器

当我们在使用传统播放器对视频进行播放时,如果我们需要跳转到视频的某一位置,只能通过拖动滚动条来实现这一目的,而Dimp和DRAGON则是两个允许你直接操纵画面内容来进行视频回放或快进的播放器,它们可以根据需要对画面中的运动物体…

pandas filter_10 个 Pandas 秘籍 不是每本书里都会提到的

在处理结构化数据方面, Pandas 可能是应用最广泛的 Python 库了吧。也许你们已经看过许多正儿八经的教程、范例,但今天分享的几个秘技,可不是每本书里都会提到的哟~而且我敢保证,它们一定能让你事半功倍!1. read_csv是的&#xff…

SSH配置步骤

SSH配置步骤 1 安装JDK (1) 在“ssh培训”文件夹中找到“JDK1.6.exe”应用程序,如图: 双击其进行JDK的安装;而后出现下面的安装界面 接下来就是接收、下一步等无聊操作,具体的安装目录选择默认即可。 点…

TI Z-Stack协议栈架构分析

协议栈定义通信硬件和软件在不同级如何协调工作。在网络通信领域,在每个协议层的实体们通过对信息打包与对等实体通信。在通信的发送方,用户需要传递的数据包按照从高层到低层的顺序依次通过各个协议层,每一层的实体按照最初预定消息格式向数…

【开源工程】mpc

mpc Peter Lee 2008-06-05一、简介Mpc是一个非常流行的开源播放器,国外的K-Lite Codec,国内的幻想影音、终极解码、完美解码等播放工具都捆绑了mpc播放器程序。另外,暴风、kmplayer等播放器程序也都或多或少地参考及使用了mpc中的功能和代码…