python代码整合
张一爻
这个作者很懒,什么都没留下…
展开
-
一个GPU版本的遗传算法迭代xgboost最优参数的示例,这里用的是自定义损失函数
## 混合打乱数据# for i in tqdm(range(20),desc="随机打乱数据"):gamma = 0### 自动计算alpha值的取值范围 取负例的比例, "n_estimators":int(w2)#11 #即基评估器的数量。这个参数对随机森林模型的精确性影响是单调的,n_estimators越 大,模型的效果往往越好。原创 2023-11-26 19:54:38 · 748 阅读 · 0 评论 -
pymoo包NSGA2算法实现多目标遗传算法调参详细说明
n_var定义的是待求解的XXX变量数量n_obj定义的是待求解fff问题数量定义的是约束条件的数量xl定义的是待求解的XXX参数的下限xu定义的是待求解的XXX参数的上限f1,f2定义问题g1,g2定义约束条件。原创 2023-10-10 19:31:46 · 3073 阅读 · 0 评论 -
跟亮哥学oop
【代码】跟亮哥学oop。原创 2022-10-19 20:27:08 · 125 阅读 · 1 评论 -
文件信息整理demo
import osimport refrom subprocess import getoutputimport numpy as npimport pandas as pdfrom tqdm import tqdmimport timedef filesize_float_function(filepath): ''' 获得文件大小 Args: filepath: Returns: ''' return os.path.原创 2021-09-03 16:10:52 · 120 阅读 · 0 评论 -
查询本地ip物理地址信息
import requestsimport timeimport pandas as pdimport subprocessdef location(IP): try: url="https://m.ip138.com/iplookup.asp?ip=" kv = {'user-agent':'Mozilla/5.0'} r = requests.get(url + IP, headers = kv) #print(r原创 2021-09-02 13:32:29 · 165 阅读 · 0 评论 -
本地开web服务下载文件
#!/usr/bin/env python# -*- encoding: utf-8 -*-'''@File : locatin_web_page.py@Time : 2020/09/22 07:20:20@Author : manman@Contact : 408903228@qq.com@Department : my-self@Desc : None'''# here put the import libfrom os import原创 2021-01-12 12:11:40 · 223 阅读 · 0 评论 -
临时读源码的函数
def read_src(pagk): name = __import__(pagk) for i in open(name.__file__).readlines(): print(i) read_src("jieba")原创 2020-11-27 01:11:36 · 214 阅读 · 1 评论 -
vscode python头部注释及代码片段
{ "HEADER":{ "prefix": "header", "body": [ "#!/usr/bin/env python", "# -*- encoding: utf-8 -*-", "'''", "@File : $TM_FILENAME", "@Time : $CURRENT_YEAR/$CURRENT_MONTH/$CURRENT_DATE $CURRENT_HOUR:$CURRENT_MINUTE:$CURRENT_SECOND", "原创 2020-11-01 23:07:46 · 638 阅读 · 0 评论 -
生成文件路径表供文件关联分析读取
import osimport pandas as pdimport numpy as npfrom tqdm import tqdmdef listfile_function(dirpath=os.getcwd(),n=1000): counter = 0 result = [] for dir_,folder,files in tqdm(os.walk(dirpath)): init_vector = np.zeros(500).astype(str)原创 2020-11-01 12:36:08 · 781 阅读 · 0 评论 -
项目同步函数
# -*- encoding: utf-8 -*-'''@File : project_synchronization_tools.py@Time : 2020/10/29 21:40:58@Author : DataMagician @Version : 1.0@Contact : 408903228@qq.com'''# here put the import libfrom subprocess import getoutputfrom os i原创 2020-10-30 15:16:27 · 123 阅读 · 0 评论 -
项目内文件管理脚本(通用)
#!/usr/bin/env python# -*- encoding: utf-8 -*-'''@File : file_tools.py @Time : 2020/10/27 13:35:58@Author : manman@Contact : 408903228@qq.com@Department : my-self@Desc : None'''# here put the import libimport subprocess原创 2020-10-30 06:39:46 · 215 阅读 · 0 评论 -
python代码生成片段
# -*- encoding: utf-8 -*-'''@File : code_generation.py@Time : 2020/10/29 23:14:19@Author : DataMagician @Version : 1.0@Contact : 408903228@qq.com'''# here put the import libfrom os import getcwdfrom os.path import sep,isdirfro原创 2020-10-29 23:28:00 · 307 阅读 · 1 评论 -
局域网文件访问
#!/usr/bin/env python# -*- encoding: utf-8 -*-'''@File : locatin_web_page.py@Time : 2020/09/22 07:20:20@Author : manman@Contact : 408903228@qq.com@Department : my-self@Desc : None'''# here put the import libfrom os import原创 2020-09-22 07:32:07 · 272 阅读 · 0 评论 -
懒人换源脚本
def os_type(win=None,linux=None,Mac=None): platform = __import__('platform').system().lower() if platform == 'windows': print("windows") return win elif platform == 'linux': print("linux") return linux elif原创 2020-08-19 16:26:24 · 237 阅读 · 0 评论 -
pip工具
def pip3install(packge=None, keyword='清华'): if packge == None: return 'please input you packge name' else: if keyword == '阿里': __import__('os').system('pip3 install ' + str(packge) + ' -i https://mirrors.aliyun.com/pypi/原创 2020-07-28 14:25:24 · 137 阅读 · 0 评论 -
torch显卡或cpu转换自动推断函数
import torchimport numpy as npdef dynamic_planning_hardware(arr): decision_making = torch.cuda.is_available() if isinstance(arr,(list,np.ndarray)): if decision_making: return torch.tensor(arr).cuda() else:原创 2020-08-17 01:56:43 · 206 阅读 · 0 评论 -
deepin系统配置conda环境安装pytorch
deepin是一个傻瓜式linux非常适合不折腾原则的我搞事情唯一有点不太友好的是deepin的文件权限系统可能和ubuntu不太一样,应该是出于保护非程序员而做的妥协总的来说,目前体验下来,还是很舒服的一个系统,非常适合开箱即用。官网下载conda然后cd 到目录解压bash Anaconda3-2020.07-Linux-x86_64激活安装source ~/.bashrc创建python环境版本conda create --name deepintorch python=3.5原创 2020-08-13 09:37:12 · 697 阅读 · 0 评论 -
Mac啟動mysql
cd /usr/local/mysql/sudo ./support-files/mysql.server start原创 2020-08-15 23:22:50 · 108 阅读 · 0 评论 -
词性标注数据预处理
def list_file_path(dirpath): return [os.path.join(dirpath,dir) for dir in listdir(dirpath)]def replace_lambda(strings,symbles=[' ','\ufeff'],Replace_the_symbol="\n"): srcrep = {i:Replace_the_symbol for i in symbles } rep = dict((re.escape(k),原创 2020-08-08 11:49:39 · 437 阅读 · 0 评论 -
纯中文使用TF-IDF 标准词袋
def TF(paper_words,word_vector): m = word_vector.size init_TF = np.zeros(m) for word in paper_words: if word in word_vector: index_ = np.argwhere(word_vector==word)[0][0] init_TF[index_] += 1 return init_TF原创 2020-08-03 01:57:28 · 895 阅读 · 0 评论 -
新闻搜索引擎流程示例demo1.0(南方网)
import numpy as npimport reimport jiebaimport newspaperimport pandas as pdfrom tqdm import tqdmurl = 'http://www.southcn.com/' # 南方网stop_word_path = "/Users/manmanzhang/Library/Mobile Documents/com~apple~CloudDocs/MyProject/InferenceSystem原创 2020-08-01 19:58:25 · 222 阅读 · 0 评论 -
科学计数转百分比正常显示
def as_num(x): ''' 科学计数转常数百分比显示 :param x: :return: ''' y = '{:.10000f}'.format(x) # 5f表示保留5位小数点的float型 num = [] results = [] for i in y[::-1]: num.append(i) test = sum(list(map(lambda x : ord(x) in list(r原创 2020-07-30 17:05:59 · 187 阅读 · 1 评论 -
停用词过滤
stop_word_path = "InferenceSystem/src/I5_algorithm/NLP数据集合/停词库/stop_word_for_chinese.txt"def del_element(strings,symbles): srcrep = {i:'' for i in symbles } rep = dict((re.escape(k), v) for k, v in srcrep.items()) pattern = re.compile("|".joi原创 2020-07-30 12:57:15 · 629 阅读 · 0 评论 -
apriori关联分析log日志
import pandas as pdpd.set_option('display.max_columns', None)pd.set_option('display.max_rows', None)pd.set_option('max_colwidth',100)from mlxtend.preprocessing import TransactionEncoderfrom mlxtend.frequent_patterns import aprioridef apriori_of_log原创 2020-07-30 12:41:02 · 295 阅读 · 0 评论 -
加载本地词典
def just_number(string, resymbol=""): sub_str = re.sub(u"([^\u0030-\u0039])", resymbol, string) return sub_strdef filter_dict(words,numbers): word_dict = dict() for word,num in zip(words,numbers): try: number = float(j原创 2020-07-28 21:29:17 · 185 阅读 · 0 评论 -
常用正则清理
import refrom class_data_structure_module import deep_flatten# 数字 字母大些 字母小写 中文sy = ['^\u0030-\u0039', '^\u0041-\u005a', '^\u0061-\u007a', '^\u4e00-\u9fa5']def delete_special_symbol(string, resymbol=""): ''' 去除所有符号 :param string: -> 原始原创 2020-07-28 14:52:18 · 264 阅读 · 0 评论 -
ROT47
ROT47 = lambda strings :''.join([chr(33+(e+14)%94) for e in [ord(i) for i in strings] if e >=33 and e <= 126])原创 2020-07-28 14:43:53 · 942 阅读 · 0 评论 -
文件操作
import osfrom os import listdirimport os.pathfrom time import strftime, localtimeimport chardetdef mkdir(path): ''' 检查目录路径是否存在,如果不存在则穿件一个文件 :param path: 文件目录路径 :return: ''' # 引入模块 # 去除首位空格 path = path.strip() # 去除原创 2020-07-28 14:32:16 · 65 阅读 · 0 评论 -
check javalang
from os import listdirimport os.pathimport javalangmypath1 = ""# newmypath2 = ""files1 = [os.path.join(mypath1, f) for f in listdir(mypath1) if os.path.isfile(os.path.join(mypath1, f))]files2 = [os.path.join(mypath2, f) for f in listdir(mypath2)原创 2020-07-28 14:29:45 · 117 阅读 · 0 评论 -
git工具
from os import getcwddef GenerationCommand(gitaddress,path=getcwd(),newname='the_file_come_from_git_hub'): ''' github的克隆函数 :param gitaddress: ->文件地址 :param newdirname: -> 新文件名 :param path: ->预备存放文件的地址 :return: '''原创 2020-07-28 14:26:11 · 138 阅读 · 0 评论 -
web端口工具
from os import getcwddef local_web_page(portnumber=8080): try: __import__('os').system('cd ~') __import__('os').system('ifconfig | grep "inet " | grep -v 127.0.0.1') __import__('os').system('python3 -m http.server ' + portnum原创 2020-07-28 14:24:48 · 81 阅读 · 0 评论 -
维特比分词算法(纯循环)
def route(strings): m = len(strings) f , point = np.zeros(m) , np.zeros((m,2)) init_score = np.inf for end in range(m+1): init_link = end for start in range(init_link): score = end-start if score <原创 2020-07-19 17:08:09 · 170 阅读 · 0 评论 -
分词模型,维特比算法
维特比算法是一种动态规划算法,也是递归算法本质上来说,就是寻找最短步骤的一种算法NLP里常常用来分词并且保留语意对比def search_prob(word,word_dict=word_dict): try: return word_dict[word] except Exception: return 10**(-8)def check_dict(word): return word in word_vectordef slide_w原创 2020-07-18 17:42:07 · 240 阅读 · 0 评论 -
中英文过滤 非正则方法
def is_english_char(character): ordchar = ord(character) if ordchar not in range(97,122) and ordchar not in range(65,90): return False else: return True def is_chinese_char(character): conditions = lambda character , fi原创 2020-07-17 14:51:11 · 213 阅读 · 0 评论 -
双路最大匹配 bilateral matching
双路最大匹配 消除了前向与后向的差异,既可以过滤短词,也可以全部匹配实现搜索模式这个代码太啰嗦,只是没时间整理了。其实可以短很多很多def forwoard_slide(original,index_,max_len = 5): return original[index_:index_+max_len]def forwoard_test_word(text,dict_): char_len = len(text) for char_index in range(char_原创 2020-07-16 17:25:20 · 264 阅读 · 0 评论 -
后向过滤匹配 Backward Max Matching
后向最大匹配与前向最大匹配没有本质不同但是可能会出现一些词序与前向不同,而且,有些特殊词如:北京人民大学可能前向会得到北京/人民/ 大学北京人民/大学后项过滤则只会得到北京/ 大学 /人民def backward_slide(original,index_,max_len = 5): cut = index_-max_len if cut < 0: cut = 0 return original[cut:index_]backward_sli原创 2020-07-16 17:11:16 · 199 阅读 · 0 评论 -
前向最大匹配 Forward Max Matching
最大匹配是贪心算法的一种与DP算法不同的是无法考虑全局一般前向最大匹配的场景是分词sentence = "我们经常有意见分歧"dictionaries = {'我们':1,'经常':1,'有':1,'意见':1,'分歧':1}def slide(original,index_,max_len = 5): return original[index_:index_+max_len]slide(sentence,0,5)def test_word(text,dict_): ch原创 2020-07-16 16:24:42 · 856 阅读 · 0 评论 -
N-gram Language Model
def slide(data,N,start,end,m,n): return np.array([data[i,j] for i,j in zip(start,end-N) if j > N and j < n ])def prob_slide(word,original,dim=1,direction='left'): m,n = original.shape delete_rules = (original==word).any(axis=1) f原创 2020-07-15 16:08:02 · 290 阅读 · 0 评论 -
滑动窗口和概率统计窗口
def slide(data,N,start,end,m,n): ''' 滑动窗口 data 传入数据矩阵 N 传入滑动长度 start 传入矩阵长度list end 传入数值位置 m 矩阵长度 n 矩阵最大列数 ''' return np.array([data[i,j] for i,j in zip(start,end-N) if j > N and j < n ])def prob_slide(word,original,dim=1,direction='.原创 2020-07-14 15:18:06 · 283 阅读 · 0 评论 -
排列组合数计算
阶乘算法 n!=1×2×3×...×(n−1)×n。阶乘亦可以递归方式定义:0!=1,n!=(n−1)!×nn!=1×2×3×...×(n-1)×n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×nn!=1×2×3×...×(n−1)×n。阶乘亦可以递归方式定义:0!=1,n!=(n−1)!×n排列公式 A(n,k)=n(n−1)....(n−k+1)=n!/(n−k)!A(n,k)=n(n-1)....(n-k+1)=n!/(n-k)!A(n,k)=n(n−1)....(n−k+1)=n!/(n原创 2020-07-13 15:50:28 · 2101 阅读 · 0 评论