![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
python
笔记
WGS.
道阻且长,与君共勉:你若对得起时间,时间便会对得起你。
展开
-
jupyter 远程开发
jupyter 远程开发原创 2024-05-16 14:38:20 · 146 阅读 · 0 评论 -
刷题记:无重复字符的最长子串
刷题记:无重复字符的最长子串原创 2023-07-25 18:40:41 · 141 阅读 · 0 评论 -
刷题记:Python实现反转链表
刷题记:Python实现反转链表原创 2023-07-25 09:54:23 · 193 阅读 · 0 评论 -
numpy 对二维数组去重
c = np.array([[1, 2], [3, 4], [1, 2], [1, 2], [3, 4], [6, 6]])print(c)print(len(c))print('-=-=-=-=-=')cc = np.unique(c) # 一维去重print(cc)print('-=-=-=-=-=')ccc = np.array(list(set([tuple(t) for t in c])))print(ccc)print(len(ccc))[[1 2] [3 4]原创 2021-12-28 16:14:51 · 1696 阅读 · 0 评论 -
python --- 将没有逗号的字符串列表转为有逗号的字符串列表
ss = '[75 0 0 0 0 0]'ss = ss.replace('[', '').replace(']', '').split(' ')print(ss)res = [int(s) for s in ss if s != '']print(res)['75', '', '0', '', '0', '', '0', '', '0', '', '0'][75, 0, 0, 0, 0, 0]原创 2021-12-06 22:01:31 · 715 阅读 · 0 评论 -
Python 优化大列表遍历速度(列表转为查找树存储)
文章目录问题描述将列表存储改为查找树存储查找树搜索应用问题描述问题描述:有一个列表:A,大约15W行。有一个字符串:B。现在想找到这个列表A中,所有字符串B的字串。普通方法:遍历这个列表A,判断每个元素是否在这个字符串B中问题:想要提升效率,(A的存储类型可以改)比如:A:['小王王', '王王', '大王王', '大王', '中王王'] B: "我爱小王王"结果: '小王王', '王王'将列表存储改为查找树存储# 非叶子节点def addDictTree(inDict, c原创 2021-11-05 17:38:46 · 2479 阅读 · 0 评论 -
python判断当前时间为星期几
思路:给定一个历史星期一的时间,然后当前时间减去历史星期一的时间的天数,对7求余import pandas as pdtimea = '2021-08-01's = '2021-08-21'sub = pd.to_datetime(s) - pd.to_datetime(timea)print(type(sub), sub, pd.to_datetime(timea))week = sub.days % 7week<class 'pandas._libs.tslibs.time原创 2021-08-12 10:17:05 · 2306 阅读 · 0 评论 -
list拼成pandas的df
ids = '10_6610'values = [[1, 2, 3, 4, 5, 6], [2, 3, 4, 5, 6, 7], [3, 4, 5, 6, 7, 8]]lens = len(values)# 构造idids_li = []for i in range(len(values[0])): ids_li.append(ids)# 横向分组转为纵向分组zdict = {}zdict['alpos_id'] = ids_lifor i in range(lens):原创 2021-07-21 09:41:08 · 1267 阅读 · 1 评论 -
python 获取时间序列中断开的时间,并进行插值处理
文章目录获取断开的时间插值处理获取断开的时间import timefrom datetime import datetime, timedelta, dateimport numpy as npimport pandas as pdimport mathfrom scipy import interpolatedicts = [ {'date_time': '2021-06-01', 'ecpm_tom': 13}, {'date_time': '2021-06-02',原创 2021-07-11 17:47:07 · 1183 阅读 · 1 评论 -
python 读写hdfs的txt文件
from hdfs import ClienthdfsConn = Client('http://111111:111', root='/111/111', timeout=1000, session=False)NearLinearIds = []with hdfsConn.read(NearLinearIds_path, encoding='utf-8', delimiter='\n') as f: for line in f: NearLinearIds.append(原创 2021-07-05 17:13:59 · 992 阅读 · 0 评论 -
this version of pandas is incompatible with numpy < 1.15.4
conda list查看numpy版本:/data/anaconda3/bin/conda list升级numpy/data/anaconda3/bin/conda update numpy原创 2021-06-30 15:33:32 · 2700 阅读 · 0 评论 -
AttributeError: ‘bytes‘ object has no attribute ‘encode‘
跟着源码点进去,修改如下部分:把encode改成decode就可以了这是因为在python3中,编码的时候区分了字符串和二进制原创 2021-06-30 15:15:59 · 4380 阅读 · 0 评论 -
python连接MySQL:ModuleNotFoundError: No module named ‘MySQLdb‘
加入:pymysql.install_as_MySQLdb()API:# coding:utf-8import pymysqlimport pandas as pdpymysql.install_as_MySQLdb()def pull_data(sql, dicts): conn = pymysql.connect( host=dicts['host'], user=dicts['user'], passwd=dicts['pas原创 2021-06-23 17:59:33 · 927 阅读 · 1 评论 -
三次样条插值详解(附代码实现)
文章目录前言引入二次样条的原理二次样条代码实现三次样条的原理三次样条代码实现前言当已知某些点而不知道具体方程时候,最经常遇到的场景就是做实验,采集到数据的时候,我们通常有两种做法:拟合或者插值。拟合不要求方程通过所有的已知点,讲究神似,就是整体趋势一致。插值则是形似,每个已知点都必会穿过,但是高阶会出现龙格库塔现象,所以一般采用分段插值。今天我们就来说说这个分段三次样条插值。引入首先我们先抛开众多的回归算法不谈, 我们对于给出如下的离散的数据点,现在想根据如下的数据点来推测 x=6 时的值,我们应该原创 2021-06-18 10:34:00 · 29750 阅读 · 9 评论 -
时间序列 插值代码实现
文章目录先来看一下需求直接上代码,需要的自行修改首先需要获取断开的时间,以及要往前插的时间将日期转为数字,便于插值对断开的数据进行三次样条插值,对其余的往前取均值插插值完成全部代码有关scipy interpolate的差值方法demo可以参考如下两篇文章先来看一下需求有一个时间序列数据,例如如下:x = ['2021-05-10', '2021-05-11', '2021-05-12', '2021-05-13', '2021-05-16']y = [3.4783, 1.25, 1.1111, 1原创 2021-06-17 16:57:39 · 8480 阅读 · 2 评论 -
Python 判断日期是否连续,并生成断开的日期
直接上代码,需要的拿去结合自己修改:import numpy as npfrom scipy import interpolateimport matplotlib.pyplot as pltimport time, datetimefrom datetime import datetime, date, timedeltax = ['2021-5-10', '2021-5-11', '2021-5-12', '2021-5-13', '2021-5-16']y = [3.4783, 1.2原创 2021-06-17 10:41:38 · 4150 阅读 · 2 评论 -
清华源安装pymysql
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pymysql==0.9.3 切记:用清华源的时候关掉VPN原创 2021-06-08 18:35:32 · 2940 阅读 · 0 评论 -
pandas 统计某列的值出现的次数,并删除出现一次的值
删除ad_position_id这一列,出现一次的值,把出现一次的ad_position_id放到一个列表,删除train_flle_path = 'data/pre_data3.csv'source_data = pd.read_csv(train_flle_path)print(len(source_data))d = pd.DataFrame(source_data.ad_position_id.value_counts())d.columns = ['nums']# 出现一次的全部删原创 2021-05-25 11:07:57 · 4369 阅读 · 0 评论 -
boxplot 箱线图剔除离群值
这是天池的一个代码,拿来主义直接用import seaborn as snsimport pandas as pd# 包装了一个异常值处理的代码,可以调用def outliers_proc(data, col_name, scale=3): """ 用于清洗异常值,默认box_plot(scale=3)进行清洗 param data: 接收pandas数据格式 param col_name: pandas列名 param scale: 尺度 """原创 2021-05-12 09:57:33 · 6922 阅读 · 1 评论 -
chunksize、iterator --- Pandas分块处理大文件
原理就是不一次性把文件数据读入内存中,而是分多次1.指定chunksize分块读取文件read_csv 和 read_table 有一个 chunksize 参数,用以指定一个块大小(每次读取多少行),返回一个可迭代的 TextFileReader 对象。table=pd.read_table(path+'kuaishou.txt',sep='\t',chunksize=1000000)for df in table: 对df处理 #如df.drop(columns=['page',原创 2021-03-24 15:47:21 · 3559 阅读 · 0 评论 -
Python判断节假日 chinese_calendar
pip install chinesecalendar支持 2004年 至 2021年判断某日是节假日还是工作日。import datetimeimport chinese_calendar demo_time = datetime.date(2018, 10, 2) # 判断是否是节假日data_is_holiday = chinese_calendar.is_holiday(demo_time) # True# 判断某日是否工作日data_is_workday = chi原创 2021-03-19 11:17:02 · 6860 阅读 · 2 评论 -
python爬取有道翻译实现自动翻译(pyinstaller 打包)
实现效果:源码'''@Time : 2021/2/6 15:55 @Author : WGS@remarks : '''import urllib.requestimport urllib.parseimport jsonfrom tkinter import *root = Tk()root.title("WGS Translate")sw = root.winfo_screenwidth()# 得到屏幕宽度sh = root.winfo_screenheight()#原创 2021-02-06 16:19:27 · 462 阅读 · 1 评论 -
基于openCV的手势识别
文章目录捕捉摄像头(获取视频)肤色检测轮廓处理全部代码主要运用的知识就是opencv,python基本语法,图像处理基础知识,下面看效果:捕捉摄像头(获取视频)cap = cv2.VideoCapture("C:/Users/lenovo/Videos/wgs.mp4")#读取文件#cap = cv2.VideoCapture(0)#读取摄像头while(True): ret, frame = cap.read() key = cv2.waitKey(50) & 0xFF原创 2021-02-06 15:53:30 · 2621 阅读 · 3 评论 -
python 关于PMML文件的保存与加载
pip install pypmmlpip install sklearn2pmmlfrom sklearn2pmml import PMMLPipeline, sklearn2pmmlfrom pypmml import Model保存模型,以lr模型为例,关键代码:# 创建PMML管道pipeline = PMMLPipeline([ ('classifier', LogisticRegression(C=gscv.best_params_['C'], class_weight=原创 2020-11-24 20:22:27 · 2734 阅读 · 2 评论 -
pandas关于 透视表(pivotTab)和交叉表(crossTab)
文章目录1.透视表(pivotTab)1.按‘产地’和‘类别’重新索引,然后在‘价格’和‘数量’上执行mean函数2.行索引为‘产地’,列索引为‘类别’,对‘价格’应用‘max’函数,并提供分项统计,缺失值填充02.交叉表(crossTab)1.透视表(pivotTab)透视表就是将指定原有DataFrame的列分别作为行索引和列索引,然后对指定的列应用聚集函数(默认情况下式mean函数)。df = DataFrame({'类别':['水果','水果','水果','蔬菜','蔬菜','肉类','肉类'原创 2020-11-18 16:02:24 · 554 阅读 · 1 评论 -
python 制作工资条
我们先来看看原始数据是什么样子的。那么最后做成的效果是什么样子的呢?这就很方便了,不管你公司有多少人,只要你把原始数据丢给我,我都可以秒出一个工资条,省得每次都需要使用Excel操作一遍,并且数据多了Excel还会卡顿。首先,我们应该是读取Excel表格。然后需要拷贝其中一个sheet表到另外一张sheet表,并给sheet命名。这样做的目的:为了存放制作好工资条的那张sheet表。import reimport openpyxlfrom copy import copywb = ope原创 2020-08-10 19:09:28 · 2328 阅读 · 2 评论 -
Python 解析XML存入Excel中
XML文件部分数据<?xml version='1.0' encoding='UTF-8'?><nvd xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://nvd.nist.gov/feeds/cve/1.2" nvd_xml_version="1.2" pub_date="2017-05-12" xsi:schemaLocation="http://nvd.nist.gov/feeds/cve/1.2原创 2020-07-19 19:17:53 · 1073 阅读 · 0 评论 -
常见加密算法-python实现
MD5加密全称:MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。md5加密算法是不可逆的,所以解密一般都是通过暴力穷举方法,通过网站的接口实现解密import hashlibm = hashlib.md5()m.update(str.encode("utf8"))print(m.hexdigest())SHA1加密全称:安全哈希算法原创 2020-07-17 21:12:32 · 998 阅读 · 0 评论 -
python实现下载压缩包并且解压
from keras.utils.data_utils import get_fileimport zipfileimport os# 下载代码file='data.zip'dir='/data1/home/qlj/code/pytorch'url='https://download.pytorch.org/tutorial/data.zip''''函数说明 getfile:参数:fname: 下载后你想把这个文件保存成什么名字origin: 下载的地址链接cache_subdir原创 2020-07-16 21:21:43 · 4173 阅读 · 1 评论 -
python pandas.read_csv 参数整理
filepath_or_buffer : str,pathlib。str, pathlib.Path, py._path.local.LocalPath or any object with a read() method (such as a file handle or StringIO)可以是URL,可用URL类型包括:http, ftp, s3和文件。对于多文件正在准备中sep : str, default ‘,’指定分隔符。如果不指定参数,则会尝试使用逗号分隔。分隔符长于一个字符并且不是‘\原创 2020-07-15 19:06:33 · 440 阅读 · 0 评论 -
(亲测可行!!!)ImportError: DLL load failed: 找不到指定的模块,Failed to load the native TensorFlow runtime.
完整报错如下:Traceback (most recent call last): File "E:\anaconda\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module> from tensorflow.python.pywrap_tensorflow_internal import * File "E:\anaconda\lib\site-packages\tensor原创 2020-07-09 21:03:27 · 1822 阅读 · 0 评论 -
python 实现图片转卡通图
使用的是百度的API,我们可以进入百度AI开放平台,登录,然后点 立即使用、创建应用然后上代码:import base64import requestsdef get_access_token(): # 获取token的API url = 'https://aip.baidubce.com/oauth/2.0/token' # 获取access_token需要的参数 params = { # 固定参数 'grant_type':'原创 2020-07-08 19:59:27 · 3570 阅读 · 1 评论 -
python ---图片转为卡通图
安装opencvpip install opencv-pythonimport cv2import osdef cartoonise(picture_name): imgInput_FileName = picture_name imgOutput_FileName = r"H:\test" + picture_name num_down = 2 # 缩减像素采样的数目 num_bilateral = 7 # 定义双边滤波的数目 img_rgb =原创 2020-07-05 10:19:42 · 2189 阅读 · 0 评论 -
python 返回字典值最大的键
dict={'首页': '736355', '新闻详情页': '898165'}print(max(dict, key=dict.get))原创 2020-07-02 17:44:40 · 1940 阅读 · 0 评论 -
ValueError: Input contains NaN, infinity or a value too large for
问题:pandas在处理数据时出现以下错误ValueError: Input contains NaN, infinity or a value too large for dtype(‘float64’).原创 2020-06-27 19:31:40 · 2208 阅读 · 0 评论 -
pandas 筛选出有缺失值的行或者列
筛选出有缺失值的行或者列# 筛选出有缺失值的列:df.isnull().any()# 筛选出有缺失值的行:df.isnull().T.any()原创 2020-06-17 10:34:36 · 5729 阅读 · 0 评论 -
修改指定列数据(如将数据中Sex中male修改为男,female修改为女)
修改指定列数据(如将数据中Sex中male修改为男,female修改为女)映射方法循环for i in range(data['Sex'].shape[0]): if data['Sex'].iloc[i] == 'female': data['Sex'].iloc[i] = '女' else: data['Sex'].iloc[i] = '男'...原创 2020-06-17 10:33:57 · 5015 阅读 · 0 评论 -
pandas 统计某一列或某一行的缺失值数目
统计某一列或某一行的缺失值数目1.使用isnull()import pandas as pd# 首先导入数据df = pd.read_csv('123.csv' , encoding='gbk')# 计算data每一行有多少个缺失值的值,即按行统计缺失值rows_null = df.isnull().sum(axis=1) # 下面则是按列统计缺失值col_null = df.isnull().sum(axis=0)#统计整个df的缺失值all_null = df.isnull(原创 2020-06-17 10:33:09 · 9125 阅读 · 1 评论 -
selenium爬取下载好看视频
from selenium import webdriverimport timeimport osimport requests# 创建文件夹file_dir = os.getcwd() + '/视频'if not os.path.exists(file_dir): os.mkdir(file_dir)driver = webdriver.Chrome()# 打开页面...原创 2020-04-25 18:50:13 · 1535 阅读 · 0 评论 -
selenium爬取下载腾讯招聘
from selenium import webdriverfrom selenium.webdriver.common.keys import Keysimport timedriver = webdriver.Chrome()driver.get('https://careers.tencent.com/search.html?&start=0#a')# for h4 i...原创 2020-04-25 18:49:31 · 298 阅读 · 0 评论