![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Python
Python相关的代码经验
morein2008
这个作者很懒,什么都没留下…
展开
-
pandas手册
https://www.dataquest.io/blog/large_files/pandas-cheat-sheet.pdf原创 2018-07-06 11:38:00 · 63 阅读 · 0 评论 -
pandas 小技巧
1.找出某个字段包含某字符串的行:my_df[my_df['col_B'].str.contains('大连') > 0]或者my_df[my_df['col_B'].apply(lambda x:str(x).find('大连')>=0)]2.字段值长度大于零的行:my_df[my_df['col_b'].apply(lambda x: len(x)) > 0)...原创 2018-07-12 19:30:00 · 41 阅读 · 0 评论 -
excel操作数据实用技能
写代码写习惯了,在做数据预处理时也总是习惯性地用python、pandas来做处理,但其实有时候根本不需要写代码,用excel也能达到目的,甚至比写代码快很多,写代码要半天,excel只要几秒钟。下面是几个最近发现的实用技能和场景:1.去掉某一个列的重复项:例如,删除address列中的重复项。操作方法:点击address列的列头(表第一行上方的A,B,C等),选中该列的所有行,复制粘贴到一...原创 2018-07-12 10:28:00 · 72 阅读 · 1 评论 -
用pandas处理数据遇到的坑
1.使用pandas.read_csv(filePath)方法来读取csv文件时,可能会出现这种错误:ParserError:Error tokenizing data.C error:Expected 2 fields in line 407,saw 3.这句话的意思是,在csv文件的第407行数据,期待2个字段,但在第407行实际发现了3个字段。原因:header只有两个字段名,但数据的第4...原创 2018-07-10 17:09:00 · 141 阅读 · 0 评论 -
Python读写xml
python对XML的解析常见的XML编程接口有DOM和SAX,这两种接口处理XML文件的方式不同,当然使用场合也不同。python有三种方法解析XML,SAX,DOM,以及ElementTree:1.SAX (simple API for XML )python 标准库包含SAX解析器,SAX用事件驱动模型,通过在解析XML的过程中触发一个个的事件并调用用户定义的回调函数来处理XML文...原创 2018-07-08 17:56:00 · 47 阅读 · 0 评论 -
pandas读写csv,并增加一列
为读取csv,并DataFrame增加一列,再自由组合列并保存到csv文件:import pandas as pdsourceFile='d:\person.csv' #person.csv包括id,name,age三个列df=pd.read_csv(sourceFile,low_memory=False) #读取csv,设置low_memory=False防止内存不够时报警告df[...原创 2018-06-27 11:12:00 · 517 阅读 · 0 评论 -
Python生成器
生成器的使用:生成器--廖雪峰的网站中提到:最难理解的就是generator和函数的执行流程不一样。函数是顺序执行,遇到return语句或者最后一行函数语句就返回。而变成generator的函数,在每次调用next()的时候执行,遇到yield语句返回,再次执行时从上次返回的yield语句处继续执行。其实,理解生成器的yield关键在于:yield的作用与return类似,yield a语...原创 2018-06-22 20:57:00 · 41 阅读 · 0 评论 -
自定义计算函数运行耗时的函数
自定义计算函数运行耗时的函数import timeimport functoolsdef running_time(func): @functools.wraps(func) def wrapper(*args,**kwargs): start=time.time() result=func(*args,**kwargs) ...原创 2020-04-23 13:29:00 · 98 阅读 · 0 评论 -
CNN卷积神经网络的卷积层、池化层的输出维度计算公式
卷积层Conv的输入:高为h、宽为w,卷积核的长宽均为kernel,填充为pad,步长为Stride(长宽可不同,分别计算即可),则卷积层的输出维度为:其中上开下闭开中括号表示向下取整。MaxPooling层的过滤器长宽设为kernel*kernel,则池化层的输出维度也适用于上述公司计算。具体计算可以AlexNet为例。...原创 2020-03-11 19:50:00 · 3036 阅读 · 0 评论 -
Python所有异常错误的父类--BaseException
BaseException # 所有异常的基类 +-- SystemExit # 解释器请求退出 +-- KeyboardInterrupt # 用户中断执行(通常是输入^C) +-- GeneratorExit # 生成器(generator)发生异常来通知退出 +-- Exception # 常规异常的基类 +-- StopIteration # 迭代器没有...原创 2020-03-06 19:08:00 · 2296 阅读 · 1 评论 -
DataFrame迭代过程中多行修改
方法1:df.loc[conditions]=row.values,逐行地进行整行替换for row in df.iterrows(): row['given_amount']=row['amount']; row['given_percent']=1 row['remain_amount']=0 row['remain_percent']=0 tot...原创 2020-02-25 15:28:00 · 215 阅读 · 0 评论 -
《动手学深度学习》在线文档
《动手学深度学习》在线文档,numpy版本:https://zh.d2l.ai/chapter_preface/preface.html原创 2020-01-08 10:30:00 · 75 阅读 · 0 评论 -
【Python】自己写日志功能
Python有自带的logging模块,用于日志记录,功能很强大,但不好用,使用挺麻烦的,而且发现了几个bug,调用了一个logger.warning()一次,结果日志文件中出现了n行记录,且逐渐变成n+1,n+2,...越来越多。也不想去查原因,索性自己写一个日志功能。我想要的日志的核心功能就只有两点:1. 保存触发时间、异常堆栈信息。2. 用文件形式保存。上面第1点可以用Python...原创 2019-12-31 19:21:00 · 106 阅读 · 0 评论 -
坑爹的PostgreSQL的美元符号(有时需要替换成单引号)
今天想在PostgeSQL数据库里建一个存储过程(或函数也行),由于对存储过程比较生疏,上网搜了很多教程和源代码例子,照着写,发现怎么都不行,甚至把网上教程包括官方教程的源代码原封不动的复制下来一执行都会报错,教程示例:---创建自定义函数sales_taxCREATE or replace FUNCTION sales_tax(subtotal real) RETURNS real A...原创 2019-11-07 21:14:00 · 2756 阅读 · 2 评论 -
DataFrame的apply用法
DataFrame的apply方法:def cal_value_percent(row,total_value): row['new_column']=row[estimated_value_col]/total_value return row df=df.apply(lambda row:cal_value_percent(row,total),axis=1)Se...原创 2019-11-04 19:20:00 · 207 阅读 · 0 评论 -
python动态加载模块,并获取模块中的类与方法(类似反射)
temp.py:def func(): print('func is called.')class A: def __init__(self,name='A'): self.name=name def _say(self,msg): print(msg) def sayhello(self): print...原创 2021-01-20 11:04:00 · 442 阅读 · 1 评论 -
用Python装饰器给函数自动加上try except
用装饰器实现把函数用try...except包起来:import loggingimport tracebackfrom functools import wrapslogging.basicConfig(filename='error.log', level=logging.INFO, format='...原创 2021-01-18 19:38:00 · 455 阅读 · 0 评论 -
Python多进程、多线程及各自的适用场景
多线程与多进程的应用场景不一样:1、线程的创建开销小、由于GIL的存在,无法真正并行,适合GUI、网络通信、文件读写等IO密集型场景;2、进程的创建开销大,可以充分利用多个CPU实现并行,适合计算量比较大(比如单个函数执行需要几分钟、几十分钟以上),且无需IO(简单地说就是数据已经在内存中,不需要读取磁盘、不需要网络通信)的场景。3、多线程、多进程都不适合的场景:基本不涉及IO或只读取一次文件这...原创 2020-12-04 20:34:00 · 357 阅读 · 0 评论 -
个税及税后工资计算
每月个人所得税、税后薪资计算器:def due_tax(due_income): ''' 本函数计算年度应缴个税 :param due_income:本年累计应纳税所得额 :return:本月应缴个税金额 ''' if 0<due_income<=36000:return due_income*0.03-0 #本年累计应纳税所得额*...原创 2020-09-10 15:53:00 · 384 阅读 · 0 评论 -
python正则模块re.findall的问题
发现python的正则模块re的findall方法跟我预想的不太一样,它匹配的时候会消耗掉之前已经匹配到的字符,例如:[In]:import repat=',\d+,' #表示一个或以上整数前后都有一个逗号text='1,2,3,4,5,6,7,'[In]:result=re.findall(pat,text)print(result)[Out]:[',2,', ',4,',...原创 2020-09-08 17:39:00 · 579 阅读 · 0 评论 -
.pyc文件是什么?
一个.py文件就是一个模块,而模块名就是文件名,如module.py的模块名就是module。如果module.py文件里定义了一些函数和变量,而外部文件如test_module.py想使用这些函数或文件,那么test_module.py里可以使用import语句来引入该模块。使用方法是在文件的第一行 import 模块名,如import module,若要使用module模块原创 2014-04-28 11:22:43 · 1088 阅读 · 0 评论