
python
凌岸_鸿
梦里不知身是客 一晌贪欢
展开
-
shell运行python
shell语句封装运行python原创 2022-07-16 10:45:00 · 4126 阅读 · 2 评论 -
拆分dataframe内容写入excel的不同sheet
拆分dataframe内容写入excel的不同sheet原创 2022-05-05 17:20:04 · 1610 阅读 · 0 评论 -
python绘制堆叠条形图
目前在网络上多是单个条形图堆叠,没看到一组的条形图堆叠。代码如下:import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport matplotlib.ticker as ticker导入一组自己造的数据data = pd.read_excel('data.xlsx')In [4]: dataOut[4]:多使用几个plt.bar()函数,就可以画出来啦。。。tick_label = list原创 2021-12-18 20:08:54 · 4180 阅读 · 0 评论 -
dataframe反向过滤掉某列中的特定字符串
dataframe反向过滤掉某列中的特定字符串我们使用df = data[~data.var.str.contains('支付宝|微信|还款')]如此即可。原创 2021-06-09 16:14:50 · 728 阅读 · 0 评论 -
python操作postgresql批量删表
最近需要在pg库需要删除大量的表,之前采取的方式是进入postgresql,在Linux命令行使用pgsql,然后在交互命令中使用“drop table test_table”语句批量删表;这样感觉效率好低,为此采用了python连接pg库,然后批量删表。先导入必要的包import pandas as pdimport psycopg2import logginglogger = ...原创 2020-04-14 23:08:26 · 1928 阅读 · 1 评论 -
mac os 上安装lightgbm 采坑
直接```bashpip install lightgbm```bashmbpdeMacBook-Pro:~ mbp$ pip install lightgbmCollecting lightgbm Downloading https://files.pythonhosted.org/packages/a4/83/6e4a9cc870c117bf8316e8aa2513c507...原创 2020-03-10 21:45:37 · 692 阅读 · 0 评论 -
如何安装pyplotplus
决策树sklearn一般需要安装graphviz。再安装pyplotplus。环境:win7旗舰版 先去下载这个软件并安装下载地址在:http://www.graphviz.org/在命令行输入:conda install graphvizconda install pydot就可以正常载入这些包,pydotplus可以生成pdf文件原创 2017-10-19 10:54:13 · 1627 阅读 · 0 评论 -
python计算两个地址之间的距离
我们调用高德地图的API来计算经纬度#计算地址经纬度import requestsdef geocode(address): parameters = {'address': address, 'key': 'cb649a25c1f81c1451adbeca73623251'} base = 'http://restapi.amap.com/v3/geocode/geo'原创 2017-07-13 15:58:57 · 7066 阅读 · 0 评论 -
python操作mysql的两个方法
我想去数据库里面取出数据。 如果我有数据库下面含很多个表。下面给出代码 -*- coding: utf-8 -*-"""Created on Thu Jun 8 09:29:44 2017@author: Administrator"""#我想看看这个程序最终需要的时间 import timestart =time.clock()import mysql.connector原创 2017-06-09 17:03:04 · 633 阅读 · 0 评论 -
Two sum
Two sumGiven an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution.Example:Given nums = [2,原创 2017-01-20 00:19:03 · 376 阅读 · 0 评论 -
python实现跨excel的工作表sheet之间的复制
python,将test1的test2通过“跨文件”复制到excel2的sheet里面。包括谷歌没有能搜出这种问题答案。 我们贴出代码。我们加载openpyxl这个包来解决:原创 2017-05-26 11:42:02 · 21885 阅读 · 6 评论 -
python如何筛选数据集中列中value长度大于20的数据集
如果我有一个数据集,他的某个列名下面的value很长,我们需要筛选出,所有列名中value值字符串大于20的数据集。其实比较简单啦,一句代码就可以搞定#筛选df这个数据集下,token这个字段下面的value字符串长度大于20的df= df[df['token'].str.len() >20]原创 2017-07-06 16:33:42 · 9241 阅读 · 0 评论 -
python如何对dataframe下面的值进行大规模赋值
假设我们有一个数据集,列名叫status下面有100万的数据,其中包装 “HUMAN_REFUSE”,”SYS_REFUSE”,”HUMAN_AGREE”,”SYS_APPROVING”,”REVIEWING”, “HUMAN_CANCEL”,”SYS_AGREE”,”SYS_CANCEL” 这些字段,我现在想将这些字段分别赋值,并且新创造一列,列名为申请结果。我们使用map函数即可:df.申请结果原创 2017-07-06 16:42:07 · 3090 阅读 · 0 评论 -
缺失值的前期处理
建立模型的时候,我们对于缺失值太大的特征需要删除,否则还可以对我们造成噪音数据。 对于缺失值的处理,一般来说先判定缺失的数据是否有意义。 从确实信息可以发现,本次数据集缺失值较多的属性对我们模型预测意义不大。 统计每列属性缺失值的数量,删除缺失值过高的比例的函数。 为此本人写了函数如下:def null_ratio(data, ratiolimit = 0.4): #删除缺失值过高的原创 2017-12-05 11:20:07 · 736 阅读 · 0 评论 -
python调用R第三方包
前面写到 《python3调用R》这篇文章。我们成功的搭建了python下调用R的环境。 下来来探讨一下,如何调用R包来处理python里面的数据。我们把脚本装再r_script 里面并,用引号标注起来,然后就可以使用啦。In [14]: r_script = ''' ...: library(randomForest) # 导入随机森林包 ...: ## use data set原创 2017-12-27 13:38:48 · 5968 阅读 · 0 评论 -
python3调用R
由于工作需要,在做最优分箱的时候,始终写不出来高效的代码,所以就找到了R语言中的最优分箱的包,这个时候考虑到了在python中调用R语言,完美结合。在国内的中文网站搜了半天,搭建环境的时候一直出现” R_user not defined”这个错误,简直恼人,最后在Stack Overflow网站上找打了解决办法。我的环境是:win7 ; 使用anaconda3 ;(一)首先你要有个ana原创 2017-12-26 15:17:00 · 7330 阅读 · 5 评论 -
python3在中文路径下文件无法导入
很多时候我的中文路径去导入文件,python3导入文件,读取csv,一直报错。我们用下面的办法。path = r'F:\haha\电话号码\_测试结果.csv'f= open(path1, encoding="utf-8")df= pd.read_csv(f)再导入之前,请打开notepad++确保文件是,“以UTF-8无BOM格式”的编码形式,否则也会失败。原创 2018-01-31 16:57:06 · 7030 阅读 · 2 评论 -
特征工程同值化检测
在建模之前处理的数据里面,如果特征都是单一值,我们应该删除。这样的值没有意义,没有区分能力。本次我们采取删除特征下面值全部唯一的;'''删除维度占比过大值过高的比例的函数'''def primaryvalue_ratio(data, ratiolimit = 1): #按照命中率进行筛选 #首先计算每个变量的命中率,这个命中率是指 维度中占比最大的值的占比原创 2017-12-05 11:25:47 · 1051 阅读 · 0 评论 -
将原始数据进行WOE编码
在开发评分卡的时候,我们需要将原始数据替换成WOE编码,我给出的代码如下:def applyBinMap(X_data, bin_map, var): """ 将最优分箱的结果WOE值对原始数据进行编码 ------------------------------------------------ Params x: pandas Series ...原创 2018-03-05 14:06:38 · 4961 阅读 · 0 评论 -
简单线性回归
简单线性回归import numpy as npimport matplotlib.pyplot as pltx = [1,2,3,4,5,6,7,8,9]y = [0.199,0.389,0.580,0.783,0.980,1.177,1.380,1.575,1.771]A = np.vstack([x, np.ones(len(x))]).Ta,b = np.linalg....原创 2018-03-30 08:57:52 · 412 阅读 · 0 评论 -
module 'pandas' has no attribute 'expression' 解决办法
导入import tensorflow as tfimport skflow遇到了错误 module 'pandas' has no attribute 'expression'在stackoverflow找了答案: https://stackoverflow.com/questions/43833081/attributeerror-module-object-has...翻译 2018-04-03 10:23:47 · 6910 阅读 · 0 评论 -
python之函数cmp
cpm函数是内置函数。可直接调用。cmp(x,y) 函数用于比较2个对象,如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。原创 2017-02-07 00:31:05 · 1273 阅读 · 0 评论 -
DataFrame如何根据一列来计算另一列出现的次数
我们使用groupby这个分组函数吧。 我们给出数据集。 我们想统计每个u对应的a,并统计同一个a下面u的出现次数; 代码如下:df = pd.DataFrame({'a':[1,1,1,3,3,3,3,3,3,3,3,8],'u':[99,98,67,65,63,67,57,55,51,53,53,55]})dfOut[72]: a u0 1 991 1 98原创 2017-06-19 18:02:46 · 5798 阅读 · 0 评论 -
window10下安装python basemap模块
我们直接conda install basemap 发现报错。原创 2017-06-04 19:38:09 · 2589 阅读 · 0 评论 -
python中的ValueError
在初学时候,会遇到这种错误,修改了代码,一一比对了代码,发现代码,没有错误,可是就是运行不了。我们先从错误的语句来入手!(这显示了英语很重要)ValueError: need more than 1 value to unpack需要至少一个值来启,运行这个程序需要事先传入一个值才能运行,用所以这个程序你不能简单地用IDLE运行。这就遇到了IDL原创 2017-01-04 00:08:08 · 11837 阅读 · 0 评论 -
使Python IDLE也变得高颜值
初学Python,大家应该都是用Python自带的IDLE了,我们可以让他颜值高一些,这样敲出的代码就赏心悦目,比如像下面这样:我们首先要找到名为config-highlight.cfg的文件,文件的路径:在Win 7/win8/win10下路径为:C:\Users\\.idlerc\对于Windows可以直接打开开始运行(win+R键)%USERP原创 2016-12-31 00:43:22 · 9307 阅读 · 0 评论 -
python中的TypeError错误解决办法
新手在学习python时候,会遇到很多的坑,下面来具体说说其中一个。在使用python编写面向对象的程序时,新手可能遇到TypeError: this constructor takes no arguments这个错误。例如下面的程序:class Ball: def _init_(self,color,size,direction):原创 2016-12-28 23:56:44 · 20089 阅读 · 0 评论 -
迭代字典中的key和value
字典是python中十分重要的一个内容。 今天我们来谈谈,在一个 for 循环中,能否同时迭代 key和value?当然可以咯。dict 对象的 items() 方法返回的值:>>> d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }>>> print d.items()[('Lisa', 85), ('Adam', 95), ('Bart', 59)]>>>原创 2017-01-07 00:35:15 · 2695 阅读 · 0 评论 -
python的list求和与求积
python中,无论是对的list求和还是求积,我都给出了两种方法。1。对list求和1.1s=0for i in range(10): s+=i1.2s=sum(range(10))2 。对list求积2.1s=0for i in range(1,10): s*=i2.2from operator imp原创 2017-01-12 00:39:22 · 17205 阅读 · 2 评论 -
一行python打印乘法表
一行代码打印乘法表>>> print '\n'.join([' '.join(['%s*%s=%-2s' %(y,x,x*y) for y in range(1,x+1)]) for x in range(1,10)])1*1=1原创 2017-02-07 00:24:12 · 821 阅读 · 0 评论 -
python之函数enumerate()
enumerate函数可以遍历列表for i in range(len(a)):print a[i]等价于:for index,item in enumerate(a):print index,item原创 2017-02-07 00:21:40 · 555 阅读 · 0 评论 -
python之斐波那契数列
斐波那契数列(Fibonacci sequence),又称黄金分割数 这样的一个数列:0,1,1,2,3,8,13,21,34…….. 特别指出:0不是第一项,而是第零项。在数学上被以 递归的方法定义: F(n)=F[N-1]+F=2,F%280%29=1,F%281%29=1”>N-2 这是一个线性递推数列。此级数中任何相邻的两个数,次第相除,其比率都最为接近0.618034……我们用一行原创 2017-02-05 23:58:33 · 605 阅读 · 0 评论 -
python下实现汉诺塔
汉诺塔是印度一个古老传说的益智玩具。汉诺塔的移动也可以看做是递归函数。我们对柱子编号为a, b, c,将所有圆盘从a移到c可以描述为: 如果a只有一个圆盘,可以直接移动到c; 如果a有N个圆盘,可以看成a有1个圆盘(底盘) + (N-1)个圆盘,首先需要把 (N-1) 个圆盘移动到 b,然后,将 a的最后一个圆盘移动到c,再将b的(N-1)个圆盘移动到c。 请编写一个函数,给定输入 n, a,原创 2017-01-09 00:07:42 · 543 阅读 · 0 评论 -
python之filter()函数
filter()函数是python内置的一个高阶函数。filter()过滤出1~100中平方根是整数的数。原创 2017-01-18 00:00:20 · 794 阅读 · 0 评论 -
python安装requests库
第三方库的网站下载安装包,解压在python的安装目录。 给出网站:http://cn.python-requests.org/zh_CN/latest/user/install.html#pip-install-requests此时,下载来文件,解压到你的python目录下。打开cmd,进入你的python安装目录,并且进入刚刚下载的文件我们输入:python setup.py install输原创 2017-02-16 00:02:49 · 1228 阅读 · 0 评论 -
spyder常用快捷键
Ctrl + 1: 注释/反注释 Ctrl + 4/5: 块注释/块反注释 Ctrl + L: 跳转到行号 Ctrl +I: 显示帮助 Tab/Shift + Tab: 代码缩进/反缩进原创 2017-05-10 14:53:27 · 1646 阅读 · 0 评论 -
python获取代码运行时间
有的时候,操作大文件,或者取数,要很久,我们给脚本首尾添加一段代码就知道,这段代码整体的大致运行时间了。import timestart =time.clock()#中间写上代码块end = time.clock()print('Running time: %s Seconds'%(end-start))原创 2017-05-26 11:47:53 · 9188 阅读 · 0 评论 -
python获取一个月的最后一天和第一天
需要一个datetime模块支持import datetimestart_dt = datetime.datetime(2017,4,1).replace(hour=0, minute=0, second=0, microsecond=0)end_dt = datetime.datetime(2017,4,30).replace(hour=0, minute=0, second=0, microse原创 2017-05-12 16:34:26 · 4953 阅读 · 1 评论 -
jsoncsv模块批量将json转为csv格式
给出Linux下面的操作命令:.. code-block:: bashcat raw.json |jsoncsv |mkexcel > output.csvcat raw.json |jsoncsv |mkexcel -t xls > output.xls给出windows下面的操作命令:.. code-block:: bash!type raw.json |jsoncsv |mkexcel >原创 2017-05-12 15:28:43 · 3973 阅读 · 1 评论 -
anaconda下的强大的conda命令
我们来探究window下面,使用conda命令来操作anaconda,安装库。conda -V 检验是否安装;以及当前的anaconda版本conda list 查看安装了那些库conda create python3 创建了python3的虚拟环境activate python3 进入你的python3的虚拟环境(原创 2017-04-13 13:26:32 · 4124 阅读 · 0 评论