Python
文章平均质量分 70
你欲何为R
千好万好,不如你好。
展开
-
Python 数据分析 | 机器学习 必备
数学运算:mo,isodd,iseven,count,counta,countblank,sum,sumif,sumifs,average,averagea,averageif,averageifs,stdev,round,sqrt,trunc,int,randbetween,rand,product,sumproduct,sumsq,sumx2py2,sumx2my2,sumxmy2,max,min,row,column,offset,subtotal;游标对象(创建对象、对象的方法、对象的属性);原创 2023-09-26 09:41:46 · 155 阅读 · 0 评论 -
Python 基础合集 2023-08-01
python语法基础原创 2023-08-01 19:16:03 · 207 阅读 · 0 评论 -
【Python 面试题】判断两个圆环是否相同--腾讯2020数据分析校招
题目: 有一个环上面有6个点,一个点都有一个数字,对于两个环来说,若6个数完全一致(顺序可以随机,只要数相同即可)则说明这两个圆环是一样的。现在有n个圆环,想问你这里面有没有一样的两个圆环,若有输出YES,否则输出NO。"""题目: 有一个环上面有6个点,一个点都有一个数字,对于两个环来说,若6个数完全一致 (顺序可以随机,只要数相同即可)则说明这两个圆环是一样的。 现在有n个圆环,想问你这里面有没有一样的两个圆环,若有输出YES,否则输出NO。"""...原创 2020-09-08 11:54:02 · 466 阅读 · 0 评论 -
通过手机号解析出手机号归属地的省、市、运营商、邮编、区号
首先需要pip安装 phone 第三方模块通过 phone.Phone.find() 函数解析from phone import Phonedef get_mobile_location(phoneNum): """ """ info = Phone().find(phoneNum) try: province = info['province'] city = info['city'] zip_code原创 2020-08-21 16:38:39 · 1193 阅读 · 0 评论 -
【python 笔记】高阶函数 map、reduce、filter
高阶函数是在Python中一个非常有用的功能函数,所谓高阶函数就是一个函数可以用来接收另一个函数作为参数,这样的函数叫做高阶函数。常用的python内置高阶函数为:map、reduce、filter 这三个(个人用得比较多的也就这三个),使用高阶函数可以极大的提升代码可读性,简化代码结构。map map函数接收的是两个参数,一个函数,一个序列,其功能是将序列中...原创 2019-12-11 17:08:26 · 374 阅读 · 0 评论 -
【python 可视化】2 seaborn笔记
Seaborn 基于matplotlib且数据结构与pandas统一的统计制图库功能:计算多变量间关系的面向数据集接口 可视化类别变量的观测与统计 可视化单变量或多变量分布并与其子数据集比较 控制线性回归的不同因变量并进行参数估计与作图 对复杂数据进行易行的整体结构可视化 对多表统计图的制作高度抽象并简化可视化过程 提供多个内建主题渲染matpotlib的图像样式 提供调色板...原创 2019-12-09 20:27:29 · 1617 阅读 · 1 评论 -
【python 时间】datetime、time、date
import timeimport datetimefrom dateutil.relativedelta import relativedeltaimport pytzimport pandas as pd国际时间、本地时间"""国际时间 和 本地时间utc time: 国际时间(伦敦 格林威治时间)lacaltime: 本地时间(北京时间)"""# 国际时间ti...原创 2019-12-02 17:49:28 · 477 阅读 · 0 评论 -
【python 列表 】list() 和 中括号[] 的区别
先定义一个列表ls_src = ['Baidu', 'Alibaba', 'Tenxun', 'Jingdong']列表生成式中使用列表[list(i) for i in ls_src]列表生成式中使用中括号[][[i] for i in ls_src]可以看到list()会把字符串拆分成一个列表,字符串中的每一个元素就是新列表的元素,而中括号【】则是把整...原创 2019-11-29 17:51:28 · 9187 阅读 · 3 评论 -
【数据预处理 标准化】StandardScaler中的std参数和pandas中的std计算方式上的区别
StandardScaler把所有数据归一到均值为0方差为1的分布中 。适用于没有明显边界的情况;有可能存在极端数据值。计算公式: 其中S标准差的计算方式是numpy中的std方法,可以查看一下StandardScaler的文档StandardScaler??Init signature: StandardScaler(copy=True, with_mean=...原创 2019-11-28 12:34:29 · 2911 阅读 · 0 评论 -
【集成学习】lightgbm中文文档
lightgbm中文文档:html:http://lightgbm.apachecn.org/cn/latest/index.htmlgithub:https://github.com/apachecn/lightgbm-doc-zh原创 2019-11-28 10:24:32 · 387 阅读 · 0 评论 -
【python groupby】分组聚合groupby的用法
对dataframe进行groupby之后得到的是一个groupby对象,不能直接打印输出,但可以对这个对象进行各种计算df = pd.DataFrame({'key1':['a','a','b','b','a'], 'key2':['one','two','one','two','one'], 'data1':np...原创 2019-11-26 16:46:25 · 7403 阅读 · 2 评论 -
【python pandas】重塑、透视、交叉:stack,unstack,pivot,pivot_table,crosstab
使用多层索引进行重塑stack、unstackdf = pd.DataFrame(np.arange(6).reshape((2,3)), index=pd.Index(['ohio','colorado'], name='state'), columns=pd.Index(['one','two','three'...原创 2019-11-25 19:20:13 · 790 阅读 · 0 评论 -
【python 正则】
查找 findall, match, searchimport redef re_match_common(pattern, string, mathod, flags = re.I|re.M): """正则查找通用函数 :param pattern: 正则表达式 :param string: 可用于查找的字符串 :param mathod: 查找...原创 2019-11-25 17:46:01 · 152 阅读 · 0 评论 -
【python】创建路径、excel同时写入多个sheet表
创建路径import osdef create_path(pre_path): """创建目录 eg:'D:/pingfen/result' """ folder = os.path.exists(pre_path) # 判断是否存在文件夹如果不存在则创建为文件夹 if not folder: # makedirs ...原创 2019-11-25 15:45:25 · 2540 阅读 · 0 评论 -
【python小技巧】分块读取大文件、读取数据内容带引号的文本文件
# ===================== 逐块读取文本文件 ===========================nrows = 10 # 只读取一定行数的数据chunksize = 4 # 分块读取,返回一个可迭代对象TextFileReaderiterator = True # 返回一个可迭代对象,使用df.get_chunk(10)查看数据# ===============...原创 2019-11-25 15:00:26 · 964 阅读 · 0 评论 -
【python 面试题】如何从数组中找出满足a+b=c+d的两个数对
"""给定一个数组,找出数组中是否有两个数对(a,b)和(c,d),使得a+b=c+d,其中,a、b、c、d是不同的元素。如果是多个答案,打印任意一个即可。例如给定数组[3,4,7,10,20,9,8],可以找到连个数组(3,8)和(4,7),使得3+8=4+7"""# 用来存储数对class pair: def __init__(self, first, second):...原创 2019-11-20 23:31:52 · 652 阅读 · 0 评论 -
【python 面试题】如何从一堆车票信息中找到旅程(dict)
# 如何从车票中找到旅程def print_result(inputs): # 用来储存inputs的键与值调换之后的信息 reverse_input = dict() for k,v in inputs.items(): reverse_input[v] = k start = None # 找到起点 for ...原创 2019-11-19 08:59:06 · 194 阅读 · 0 评论 -
IPython魔法命令
1 粘贴代码块: %paste和%cpaste%paste 解决复制代码到Ipython解释器时出些的缩进错误问题%cpaste 打开一个交互式多行输入提示,可以在这个提示下粘贴并执行一个或多个代码块2 执行外部代码:%run%run 需要执行的外部代码块(.py)3 计算代码运行时间:%timeit%timeit 自动计算接下来一行的python...原创 2019-07-17 11:27:32 · 451 阅读 · 0 评论 -
python 判断路径是文件还是文件夹、判断是否存在、获取文件大小
判断是文件夹还是文件import osif os.path.isdir(path): print "it's a directory"elif os.path.isfile(path): print "it's a normal file"else: print "it's a special file(socket,FIFO,device file)"判...原创 2019-04-01 16:11:26 · 1566 阅读 · 0 评论 -
读取json,做日志解析
# -*- coding: utf-8 -*-"""Created on Fri Feb 15 14:38:09 2019@author: yangshijin"""import pandas as pdimport numpy as npimport mathimport osimport json# 警告处理import warningswarnings.filte...原创 2019-12-02 19:21:53 · 306 阅读 · 0 评论 -
python 解决 pip 安装缓慢 的问题
经常在使用Python的时候需要安装各种模块,而pip是很强大的模块安装工具,但是由于国外官方pypi经常被墙,导致不可用,所以我们最好是将自己使用的pip源更换一下,这样就能解决被墙导致的装不上库的烦恼。新版ubuntu要求使用https源,要注意。清华:https://pypi.tuna.tsinghua.edu.cn/simple阿里云:http://mirrors.aliyun...转载 2018-08-08 19:47:02 · 210 阅读 · 0 评论 -
pandas修改列名
pandas读取数据之后经常需要修改列名,那么该怎么修改呢??import pandas as pda = pd.DataFrame({'A':[1,2,3], 'B':[4,5,6], 'C':[7,8,9]})1.简单粗暴a.columns = ['第一列', '第二列', '第三列']a 2.温柔一点的上面的方法修改列名必须是修改所有列名,在列比较少的情况下...原创 2019-01-11 10:25:53 · 9045 阅读 · 2 评论 -
pandas dataframe 提取行和列
import pandas as pddata = pd.DataFrame({'a':[1,2,3],'b':[4,5,6],'c':[7,8,9]})提取列单列data['a']多列data[['a', 'b']]使用 .loc或者 .iloc 提取第一个参数是行,第二个参数为列.loc为按标签提取, .iloc为按位置索引提取data...原创 2019-01-11 11:27:09 · 155045 阅读 · 6 评论 -
Python使用pymysql存储和读取文件
不会BB,直接两开花就好了......#!/usr/bin/env python# -*- coding: utf-8 -*-__author__ = 'yangshijin'# coding=utf-8""" 测试代码(mysql存储文件)---读取的时候可以按照id或描述信息来获取 """import pymysql # TODO 需要z自行替换的字段DBName =...原创 2019-12-02 19:22:46 · 645 阅读 · 0 评论 -
python运行出错时打印错误提示信息
import tracebacktraceback.print_exc() # 返回字符串traceback.format_exc() # 直接给打印出来# traceback.print_exc()与print(traceback.format_exc())效果是一样的原创 2019-01-08 11:15:45 · 2296 阅读 · 0 评论 -
sklearn保存机器学习模型的几种方式
from sklearn import svmfrom sklearn import datasetsimport picklefrom sklearn.externals import joblibclf = svm.SVC()iris = datasets.load_iris()X, y = iris.data, iris.targetclf.fit(X, y)#方法一,...原创 2019-01-08 14:21:44 · 525 阅读 · 0 评论 -
python numpy生成等差数列、等比数列
import numpy as np# 等差数列print(np.linspace(0.1, 1, 10, endpoint=True))print(np.arange(0.1, 1.1, 0.1))"""总结: arange 侧重点在于增量,不管产生多少个数 linspace 侧重于num, 即要产生多少个元素,不在乎增量"""# 等比数列np.logspace...原创 2019-01-08 18:14:49 · 14682 阅读 · 0 评论 -
Python使用pymysql存储和读取文件_第一版
#!/usr/bin/env python# -*- coding: utf-8 -*-__author__ = 'yangshijin'# coding=utf-8""" 测试代码(mysql存储文件) """import pymysql # TODO 需要z自行替换的字段DBName = 'model_save' # 数据库tabel_name = 'models' # ...原创 2019-01-08 19:07:28 · 1780 阅读 · 0 评论 -
python dataframe分箱操作一:cut分箱
1.等宽分箱# ===========================方法一===============================def binnings(data_res, b_for_filename): a = 'bins_by' # 分箱依据 b = 'used_to_count' # 分箱之后用来统计数量的字段 test_result_out = ...原创 2019-12-02 19:22:03 · 1324 阅读 · 0 评论 -
python数据处理之OneHot
1.OneHot变换import pandas as pd df1=pd.DataFrame({'key':['a','b','c'],'data1':[1,2,3]}) print(df1)df2=pd.get_dummies(df1['key'])print(df2)df3=pd.get_dummies(df1)print(df3) 2.OneHot编码手动实...原创 2019-01-09 18:47:11 · 8368 阅读 · 0 评论 -
pandas操作数据库
使用sqlite3# 从数据库中读取数据。import sqlite3# sqlite3连接参数指定的数据库。如果数据库不存在,则会创建该数据库,然后再进行连接。# 存在则直接进行连接。该方法返回数据库的连接。con = sqlite3.connect("ttd.db")# 通过数据库连接对象的execute方法执行sql语句。con.execute("create table ...原创 2019-01-09 19:18:52 · 3117 阅读 · 1 评论 -
pandas合并数据
1.mergepd.merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=True, suffixes=('_x', '_y'), copy=True, indicator=False)...原创 2019-01-09 19:30:07 · 199 阅读 · 0 评论 -
pandas.DataFrame.columns.format()和pandas.DataFrame.columns的区别
import pandas as pddf_a = pd.DataFrame(data=[['A', 'B', 'C'], ['A1', 'B1', 'C1']])df_a.columnsdf_a.columns.format()原创 2019-01-10 11:01:35 · 3075 阅读 · 0 评论 -
pandas set_index和reset_index
1.set_indexDataFrame可以通过set_index方法,可以设置单索引和复合索引。 DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False) append添加新索引,drop为False,inplace为True时,索引将会还原为列df_a = p...原创 2019-01-10 11:26:48 · 581 阅读 · 0 评论 -
多个series合并成dataframe
import pandas as pddf = pd.DataFrame(list(zip(series_1, series_2)))原创 2019-01-30 19:12:39 · 19159 阅读 · 2 评论 -
python实现数据导入导出mysql
导入需要的python包import pymysqlimport tracebackimport pandas as pdfrom sqlalchemy import create_engineimport osimport numpy as np将sql查询结果导出文件def mysql_to_file(path_file,sql, host, user, passwo...原创 2019-03-19 12:09:16 · 4677 阅读 · 0 评论 -
Python解释器Spyde和PyCharm中的一些快捷键
熟练spyder中的一些快捷键后,能极大提升code效率。 Anaconda中有两个Python解释器,一个是Spyde,另一个是Jupyter,个人习惯是喜欢用SpydeSpyde常用的快捷键Tab/Shift+Tab:代码缩进/撤销代码缩进Ctrl+1:注释/撤销注释Ctrl+4/5:块注释/撤销块注释Ctrl+L:跳转到行号F5:运行F11:全屏可以在...原创 2018-07-19 15:08:05 · 701 阅读 · 0 评论