文章目录

  • 1、读取指定sheet和指定列的内容
  • 2、遍历数据,对两列数据相似度比较
  • 3、遍历数据,统计每类分类变量的数量
  • 4、遍历数据,删除某列为特定值的数据
  • 5、正则去掉字符串左边或者右边的内容
  • 6、正则取出固定位置的字符
  • 7、正则匹配判断字符串中是否含有中文
  • 8、list添加删除连接元素
  • 9、函数变量声明
  • 10、input对话框获取实时输入
  • 11、字符串的换行显示
  • 12、常用转义字符
  • 13、字符串的连接
  • 14、多个空格替换成其他符号
  • 15、获取某个字符串左边/右边的内容
  • 16、四舍五入和大小比较
  • 17、读取某列为指定内容的所有行
  • 18、统计作者数量并增加为新的列
  • 19、将某一列连续变量虚拟化
  • 20、删去某列为指定内容的行
  • 21、判断某列中每行的值,并且做出替代
  • 22、去掉某列中为空值的行
  • 23、删除某列为指定值的行
  • 24、对某列进行重命名
  • 25、填充某列的空值
  • 26、修改某列数据类型
  • 27、删除前几列
  • 28、合并指定列相同的两个表
  • 29、正则替换字符串中的所有数字

1、读取指定sheet和指定列的内容

data = pd.read_excel("data.xlsx",sheet_name="Sheet1",usecols=["year","code1","code2","name","keywords","type",'new'])

2、遍历数据,对两列数据相似度比较

for i in range(0,75065):if data.loc[i]['code2']!=0:if data.loc[i]['code1'][:5]==data.loc[i]['code2'][:5]:data.loc[i,'inter']=0elif data.loc[i]['code1'][:3]==data.loc[i]['code2'][:3]:data.loc[i,'inter']=1elif data.loc[i]['code1'][:1]==data.loc[i]['code2'][:1]:data.loc[i,'inter']=2else:data.loc[i,'inter']=3

3、遍历数据,统计每类分类变量的数量

list= ['fund','year','inter','age','degree','title','institute','economy','gender','type']
for i in range(0,10):print(data[list[i]].value_counts())

4、遍历数据,删除某列为特定值的数据

df_clear = data.drop(data[data['discipline']=="H"].index)

5、正则去掉字符串左边或者右边的内容

import re
template = "DF','17340','http://www.zgglkx.com','2021','205')"delete_left = template.lstrip('"DF')
print(delete_left)delete_right = template.rstrip('205\')')
print(delete_right)

结果:

','17340','http://www.zgglkx.com','2021','205')
DF','17340','http://www.zgglkx.com','2021',

6、正则取出固定位置的字符

template = "DF','17340','http://www.zgglkx.com','2021','205')"
res = re.findall(r"DF','(.*?)',",template)[0]
print(res)

结果:

17340
Process finished with exit code 0

7、正则匹配判断字符串中是否含有中文

import re
Pattern = re.compile(u'[\u4e00-\u9fa5]+')
key='[25] 张初兵,荣喜民.仿射利率模型下确定缴费型养老金的最优投资[J]. 系统工程理论与实践,2012,32(5):1048-1056. Zhang Chubing, Rong Ximin. Optimal investment for DC pension under the affineinterest rate model[J]. Systems Engineering-Theory & Practice, 2012, 32(5):1048-1056.'
match = Pattern.search(key)
if match:print("存在中文")

8、list添加删除连接元素

在最后添加元素

list.append()

从最后删除元素

a = list.pop()

用#连接列表的元素

'#'.join(list[3:5])

9、函数变量声明

def sum(*args):a,b,c=argsd = a+b+cprint({f"The sum is {d}.")

输入:

sum(1,2,3)

输出:

The sum is 6.

10、input对话框获取实时输入

age = input("how old qre you: ")
print("I am ",age,"years old")

结果:

how old are you: 2
I am  2 years old
Process finished with exit code 0

11、字符串的换行显示

print('''
I
nned
money
''')

结果:

I
nned
money
Process finished with exit code 0

12、常用转义字符

13、字符串的连接

name = 10
height =100
print(f"I am {name} years old and I am {height} cm.")
name = 10
height =100
st = f"I am {name} years old and I am {height} cm."
print(st.format(name,height))

14、多个空格替换成其他符号

import re
str1 = '2020    第一卷         第五期'
str2 = re.sub(' +', ';', str1)
print(str2)
``
结果:
```python
2020;第一卷;第五期

15、获取某个字符串左边/右边的内容

string1 = string[0:string.rfind('[')]
string2 = string[string.rfind('[')+1:]

16、四舍五入和大小比较


math模块的cell函数:
返回大于等于参数的最大整数

def ceil(*args, **kwargs): # real signature unknown"""Return the ceiling of x as an Integral.This is the smallest integer >= x."""pass

floor函数
返回小于等于函数的最大参数

def floor(*args, **kwargs): # real signature unknown"""Return the floor of x as an Integral.This is the largest integer <= x."""pass

17、读取某列为指定内容的所有行

data = data.loc[data["year"]==2016]

18、统计作者数量并增加为新的列

for i in range(2960):data.loc[i,'author_num']=len(data.loc[i]['AU'].split(";"))

19、将某一列连续变量虚拟化

比if语句快很多很多

data['AP']=data.apply(lambda x:1 if x['DT'] == "Article; Proceedings Paper" else 0,axis=1)

20、删去某列为指定内容的行

data= data.drop(data[data['DT']=="Review"].index)

21、判断某列中每行的值,并且做出替代

data['AP']=data.apply(lambda x:1 if x['DT'] == "Article; Proceedings Paper" else 0,axis=1)

22、去掉某列中为空值的行

data1= data1.dropna(axis=0,subset = ["ID_num"])

23、删除某列为指定值的行

data1 = data1.drop(data1[data1['PG']>100].index)

24、对某列进行重命名

data1 = data1.rename(columns={'Journal Impact Factor': 'JIF'})

25、填充某列的空值

data1['CY2'] = data1['CY2'].fillna(value = 0)

26、修改某列数据类型

data1[["CY2"]] = data1[["CY2"]].astype(int)

27、删除前几列

data1 = data1.drop(data1.columns[[0,1]],axis=1)

28、合并指定列相同的两个表

data3 = pd.merge(data1,data2,on=['TC','JIF','PG','TI_num','Keywords','Ref_num','FU','SI','OA','Year'])

29、正则替换字符串中的所有数字

re.sub(r'\d',',',a)

\d就是找到字符串中的所有数字,a是待处理的字符串,中间的‘,’是想要替换成的内容

python数据处理常用方法相关推荐

  1. 对python 数据处理中的LabelEncoder 和 OneHotEncoder详解

    对python 数据处理中的LabelEncoder 和 OneHotEncoder详解_起飞的木木的博客-CSDN博客_labelencoder原理

  2. python数据处理实例-Python数据处理numpy.median的实例讲解

    numpy模块下的median作用为: 计算沿指定轴的中位数 返回数组元素的中位数 其函数接口为: median(a, axis=None, out=None, overwrite_input=Fal ...

  3. insert into 多条数据_最全总结 | 聊聊 Python 数据处理全家桶(Sqlite篇)

    点击上方"AirPython",选择"加为星标" 第一时间关注 Python 技术干货! 1. 前言 上篇文章 聊到 Python 处理 Mysql 数据库最常 ...

  4. 太赞了!用200道题彻底搞定Python数据处理!

    前言 Pandas与NumPy都是Python数据分析中的利器,但是对着官方文档学习是十分枯燥且低效的方式,因此我精心挑选了200个Python数据处理中的常用操作,并整理成习题的形式创作了Panda ...

  5. python 数据处理----读取txt 一列数据写入excel 文件

    将txt数据从某一行开始写入excel文件中(例子为从Appthroughput写至excel_result1.xlsx中) import sys import random import time ...

  6. Python数据处理 PCA/ZCA 白化(UFLDL教程:Exercise:PCA_in_2DPCA_and_Whitening)

    Python数据处理 PCA/ZCA 白化 参考材料 PCA.白化 以及一份别人的课后作业答案 UFLDL教程答案(3):Exercise:PCA_in_2D&PCA_and_Whitenin ...

  7. python json key_最全总结 | 聊聊 Python 数据处理全家桶(配置篇)

    1.前言 在实际项目中,经常会接触到各种各样的配置文件,它可以增强项目的可维护性 常用配件文件的处理方式,包含:JSON.ini / config.YAML.XML 等 本篇文章,我们将聊聊 Pyth ...

  8. python数据处理实战

    python数据处理实战 二.需求 对杂乱文本数据进行处理 部分数据截图如下,第一个字段是原字段,后面3个是清洗出的字段,从数据库中聚合字段观察,乍一看数据比较规律,类似(币种 金额 万元)这样,我想 ...

  9. python labelencoder参数_对python 数据处理中的LabelEncoder 和 OneHotEncoder详解

    python 怎么读取 Label 里面的值 #简单来说 LabelEncoder 是对不连续的数字或者文本进行编号 from sklearn.preprocessing import LabelEn ...

最新文章

  1. layui关闭表格编辑_Layui表格table关闭拖拽列宽、禁用拖拽列宽
  2. R3获取kernel32地址
  3. SSH port forwarding: bind: Cannot assign requested address
  4. PAT甲级1064 Complete Binary Search Tree (30分):[C++题解]完全二叉搜索树BST
  5. 【Laravel】连接sqlite,Database [] not configured,sqlite example
  6. TypeScript class 构造函数和成员的初始化顺序
  7. [react] 请说说什么是useRef?
  8. [vue] 你是从vue哪个版本开始用的?你知道1.x和2.x有什么区别吗?
  9. Gartner 发布2022年数据分析十二大趋势:数据和分析将成为创新起源
  10. OpenJudge NOI 1.5 25:求特殊自然数
  11. 第三天,编码设置,主键设置与删除,无关子查询,相关子查询,表与表之间的关系...
  12. ubuntu 使用gspca安装摄像头
  13. 1G、2G、3G、4G和5G有什么区别?5G的原理是什么?
  14. 分摊的意思_十年分摊是什么意思
  15. android sdk 固态硬盘,使用TVM在android中进行Mobilenet SSD部署
  16. 十九 Redis AOF持久化
  17. 计算机考研数学考数学几,2018考研数学:数学一、数学二、数学三分别都考什么?...
  18. C语言-关键字及其作用
  19. golang 并发模型 CSP
  20. 游戏AI的缘起与进化

热门文章

  1. JAVA实现简单限流器(上)
  2. python中s和t是两个集合、对s|t描述正确的是_S和T是两个集合,对ST的描述正确的是...
  3. Android下使用W25Q32
  4. 基于Go语言GoFrame+Vue+ElementUI的OA办公系统
  5. flex 分类模块布局 (双排盒子布局 等比例 等间距)Vue绑定数据
  6. Vue3-Pinia(小菠萝)使用详解
  7. 电影推广思路详解,最权威的电影推广方案
  8. 计算机二级Python选择题真题第一套,计算机二级Python考试题库
  9. 基于opencv的图像阴影消除车辆变道检测
  10. python 三维曲线拟合_python实现三维拟合的方法