pandas操作行集锦
pandas移花接木
数据准备两表:


我们接下来要进行的操作:
增
- 将两表进行合并
# 把两张表合并,但是这样有问题,索引会重复的进行0-19
students = page_001.append(page_002)
students
# 我们需要做一步操作,将索引全部重新排列,reset_index同时还要将原索引删除drop=True,这样就OK
students.reset_index(drop=True)

- 追加一行数据到最后
# 这里必须开启ignore_index告诉pandas直接给我加,不要管索引,否则会报错
append_last = pd.Series({'ID':40, 'Name':'New_friend', 'Score': 90})
# 修改了数据后记住重新把对象引用给students,否则只是修改了副本
students= students.append(append_last,ignore_index=True)
图太长,放结果那几行

- 追加一行数据到中间的位置,例如索引为20的前面
这里可以先把数据拆分为两部分,一部分为前20,一部分为后面的
part1 = students[:20]
part2 = students[20:]
part1 = part1.append(pd.Series({'ID':100, 'Name': 'HHHHHH', 'Score':1111}),ignore_index=True)
OK合并成功
part1.append(part2,ignore_index=True)

改
修改数据有两种做法,原理不同结果相同-条条大路通罗马
- 1.修改其中的一行数据,把38行的Student_39改了
直接修改源数据
students.at[38, 'Name'] = 'HI'
students

- 2.DataFrame降维度后得Series对象,我们可以生成Series对象,直接替换掉旧的
# 生成新数据行
new_data = pd.Series({'ID':39 , 'Name': 'HELLO', 'Score': 100})
# 筛选出要替换的行,用iloc或者loc都行,这里我用iloc
students.iloc[39] = new_data
students

删
drop函数接收一个可迭代对象
删除指定索引的行
students.drop(index=[0,1,2],inplace=True)
students

删除某个范围内的行数据
students.drop(index=range(10,15),inplace=True)
students

查
将某个区间的Name修改为空值,筛选出这部分数据,并进行删除
for i in range(20, 25):
students.at[i, 'Name'] = ''
students

drop接收一个可迭代对象,那么我们就要先找出空值的数据
missing = students.loc[students['Name'] == '']
然后将空数据行的索引传给drop
students.drop(index=missing.index,inplace=True)
students

以上就是关于pandas操作行的集锦
pandas操作行集锦的更多相关文章
- pandas DataFrame行或列的删除方法
pandas DataFrame的增删查改总结系列文章: pandas DaFrame的创建方法 pandas DataFrame的查询方法 pandas DataFrame行或列的删除方法 pand ...
- pandas操作,感觉不错,复制过来的
整理pandas操作 本文原创,转载请标识出处: http://www.cnblogs.com/xiaoxuebiye/p/7223774.html 导入数据: pd.read_csv(filenam ...
- Python Pandas操作Excel
Python Pandas操作Excel 前情提要 ☟ 本章使用的 Python3.6 Pandas==0.25.3 项目中需要用到excel的文件字段太多 考虑到后续字段命名的变动以及中文/英文/日 ...
- extjs gridpanel 操作行 得到选中行
extjs gridpanel 操作行 得到选中行的列 在Extjs 3.2.0上适合 var model = grid.getSelectionModel(); model.selectAll(); ...
- Python之Pandas操作csv文件dataframe
# -*- coding: utf-8 -*- # author:baoshan import pandas as pd def main(): aqi_data = pd.read_csv('chi ...
- pandas 前后行操作
一.前后行满足条件 问题: 各位老师好,我有一个dataframe 产品 数据1 数据2 A 1 2 B 4 5 C 6 3 我想找出比如这一行数据1>数据2 AND 数据1的上一行3 AND ...
- Pandas 操作
一.Series的创建: pd.Series([ 数据 ]) In [17]: import pandas as pd In [18]: import numpy as np In [19]: s = ...
- 整理pandas操作
本文原创,转载请标识出处: http://www.cnblogs.com/xiaoxuebiye/p/7223774.html 导入数据: pd.read_csv(filename):从CSV文件导入 ...
- pandas操作
python中使用了pandas的一些操作,特此记录下来: 生成DataFrame import pandas as pd data = pd.DataFrame({ 'v_id': ["v ...
随机推荐
- L1、L2范数理解
读了博主https://blog.csdn.net/a493823882/article/details/80569888的文章做简要的记录. 范数可以当作距离来理解. L1范数: 曼哈顿距离,是机器 ...
- Metabase研究 开源的数据报表
https://blog.csdn.net/bin330720911/article/details/79273317 https://blog.csdn.net/qq_35902833/articl ...
- JNDI是什么
参考文章:---为什么 追本溯源 http://www.cnblogs.com/xx0405/p/5332198.html jndi在Spring和tomcat下的使用: https://www.cn ...
- Java核心-多线程-并发控制器-Semaphore信号量
Semaphore是非常有用的一个多线程并发控制组件(Java还有CountDownLatch.CyclicBarrier.Exchanger多线程组件),它相当于是一个并发控制器,是用于管理信号量的 ...
- 一个故事带你理解if __name__ == '__main__'
如果你刚刚接触python,相信会在看别人的程序的时候会遇到if __name__ == '__main__'酱紫的语法,如果当时没看懂现在也一知半解的话,看下去,本文可以帮你解决这个问题. 大家都知 ...
- 记一次解决cmd中执行java提示"找不到或无法加载主类"的问题
今天遇到一个问题:在cmd命令行中,用javac编译java文件可以成功,但是用java执行却提示“找不到或无法加载主类”.现将该问题的原因以及解决办法记录一下. 先理解一下系统变量path和clas ...
- IO多路复用(Python)
1. select: 监听多个文件描述符(当文件描述符条件不满足时,select会阻塞),当某个文件描述符状态改变后,将该文件描述符添加到对应返回的列表 调用: fd_r_list, fd_w_lis ...
- Linux中docker的使用
# 列出当前所有正在运行的容器$ docker ps # 列出所有的容器$ docker ps -a # 列出最近一次启动的容器$ docker ps -l # 查看容器的相关信息$ docker i ...
- sql脚本过大,无法打开的解决方法
打开cmd命令窗口,输入如下命令: sqlcmd -S ipaddress -U user -P password -d dbname -i file 其中,ipaddress是数据库服务器ip,us ...
- zookeeper启动报 Unexpected exception, exiting abnormally 错误
启动zookeeper---jps,未出现QuorumPeerMain进程 原因: 电脑中的某些进程占用了2181 port 通过 sudo netstat -nltp|grep 2181查看进程并k ...