- 博客(156)
- 资源 (5)
- 问答 (1)
- 收藏
- 关注
原创 实用小工具-python esmre库实现word查找
在文本中匹配特定的字符串,一般可以用普通的字符串匹配算法,KMP算法;python中提供了一个库esmre, 实现字符串查找
2024-06-11 22:15:53
372
原创 pandas保存dict字段再读取成DataFrame
pandas DataFrame中有字段是dict类型,使用普通的to_excel方法直接保存下次读取出来,dict字段会变成字符串,无法识别;目标:保存dict字段,下次读出来还是dict。以下两种读法可能会因json文件过大出错。保存到文件之前,需要。
2024-04-21 17:52:35
527
1
原创 C++push_back、emplace_back、emplace性能对比
push_back, emplace_back, emplace都是往容器中添加一个元素,后两者是c++11新加的,它们三者的区别在于,push_back添加元素,需要先调用被添加元素的构造函数,再调用移动构造函数。而emplace_back和emplace_back只需要调用一次构造函数, 举个例子。1作为实参传入push_back时,需要先构造一个整数对象1,然后调用移动构造函数将对象1存入vec中,调用了两次构造函数;而emplce和emplace_back直接将构造的对象存入vec中。
2023-09-30 10:36:28
556
原创 对标准化与最大最小归一化的理解
标准化与最大最小归一化1.介绍在时间序列预测中,经常要做数据的归一化,防止梯度下降时走之字形路线以加快收敛,梯度爆炸等问题;对此做个记录。2.实现def standard_scaler(data,mean,std): return (data-mean)/stddef minmax_scaler(data,min,max): return (data-min)/(max-min)3.异同点同:对数据进行缩放,中心化异:压缩后的均值不同。 最大最小归一化对异常值敏感,有较大
2022-04-09 18:15:20
3512
原创 回溯法-分割回文串
分割回文串#include<iostream>#include<vector>#include<string> using namespace std;class Solution {public: vector<vector<string>> result; vector<vector<string>> partition(string s) { int len = s.length(
2022-03-21 20:51:20
390
原创 回溯算法总结
回溯法求全排列package backtrack;import com.sun.org.apache.xpath.internal.operations.Bool;import java.util.ArrayList;import java.util.Arrays;import java.util.Collections;import java.util.List;public class lc46 { public List<List<Integer>&
2022-03-20 22:31:29
457
原创 回溯法求N皇后问题
N皇后问题搜索解的过程如图可以看到,回溯是将同一层的选择尝试完成之后,才回到上一层。类似于一种暴力的搜索算法。isValid函数,实际上是控制是否继续往下一层搜索,做剪枝优化。#include<iostream>#include<vector> using namespace std;int ans = 0;void backtracking(vector<vector<char>> &board,int row,int n);
2022-03-20 20:45:02
1720
原创 plt.bar柱状图减小柱子之间的间隔
import matplotlib.pyplot as plttaxinyc = { 'gdc':{ 'rmse': { '16': 0.6367, '32': 0.6226, '64': 0.6178, '128': 0.6088 }, 'mae': { '16': 0.1596, '32': 0.153
2022-02-14 16:51:09
4559
原创 pandas.DataFrame.reset_index()方法
reset_index()重要参数:drop : boolean, default False。因为在一些操作比如groupby之后会将原有的row打乱,导致索引顺序随之变化(不按原来的顺序)drop=True, 删除原有索引,建立新索引, drop = False 保留原有索引,添加重置索引。两者的区别在一是否删除原来的Indexdf.groupby(by='colA').reset_index(drop=True) #按colA分组,并删除旧索引,建立新索引inplace : boole
2022-01-17 21:13:59
2550
转载 LSTM时间序列预测
LSTM时间序列预测步骤1.生成数据集2.分训练集和测试集,并且需要对数据进行time windows分割3.创建滑窗数据集4. 定义lstm模型5. 定义超参数6. 定义训练过程注意的点:单步预测,输出只取lstm最后一步;预测过程中上一步的输出作为下一步的输入关于lstm 模型rnn = nn.LSTM(10, 20, 2) (input_size,hidden_size,num_layers)input = torch.randn(5, 3, 10) (seq_len,bat
2021-12-09 21:19:31
5846
原创 动态规划(入门级)
动态规划(入门级)动态规划(dynamic programming),以下简称dp,本质是带了记忆+枚举,分析时从上至下(深度搜索),dp的思考方式是从底至上,少数从上至下。1.整数拆分给定一个正整数?n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。 返回你可以获得的最大乘积。示例 1:输入: 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1。示例2:输入: 10输出: 36解释: 10 = 3 + 3 + 4, 3 ×3 ×4 = 36。思路:n拆分成至少
2021-11-20 17:19:30
803
原创 SQL求第top N
SQL求top N编写一个 SQL 查询,获取 Employee 表中第 n 高的薪水(Salary)。±—±-------+| Id | Salary |±—±-------+| 1 | 100 || 2 | 200 || 3 | 300 |±—±-------+例如上述 Employee 表,n = 2 时,应返回第二高的薪水 200。如果不存在第 n 高的薪水,那么查询应返回 null。±-----------------------+| getNthHi
2021-10-27 19:56:34
309
原创 SQL求并,交,差集
求并集select a.*from table_a as aunion allselect a.*from table_b as b去重select a.*from table_a as aunionselect a.*from table_b as b求差集select a.*from table_a as aleft join table_b as bon a.id = b.idwhere b.id is null求交集select a.*fr
2021-10-26 23:07:42
1566
原创 spark执行原理
spark执行原理第一阶段:RDD+算子组成的有向无环图第二阶段:DAGScheduler根据宽窄依赖将图划分成不同阶段的任务,并打包成TaskSet第三阶段:由TaskScheduler遍历TaskSet 将TaskSet中的每个任务发送至worker执行第四阶段:Worker线程池执中线程行任务执行速度由 rdd中分区数量、stage的个数、和woker中核的数目决定重试机制若task发送失败,TaskScheduler会重试发送3次,3次依然失败,由DAGScheduler重新提交任务
2021-10-23 20:43:45
661
原创 使用DGL进行异构图元路径采样
异构图元路径采样import dglimport tqdmimport osdef construct_graph(): node_src = [1,2,0,3,4,5,6,7] node_dst = [2,0,1,1,1,6,7,8] data1 = (node_src,node_dst) data2 = (node_dst,node_src) hg = dgl.heterograph( {('paper','pa','autho
2021-10-21 00:16:35
1788
原创 最长上升子序列
最长上升子序列 dp + 二分法#include<bits/stdc++.h>using namespace std;//动态规划 O(n^2)int lengthOfLIS(vector<int>& nums) { int result = 0; int n = nums.size(); vector<int> dp(n,1); if(n == 1){ return n; } for(int i=1;i<n;i++
2021-10-15 00:06:57
148
原创 二分查找 边界查找
二分查找1. 简介二分查找是一种高效的查找算法,二分必有序,二分查找有许多细节共6处细节2. 左右指针初始化l = -1, r = N; 指针不越界考虑两种极端情况情况1: arr = [1,2,3,4,5,6], key = 7, 小于时l指针不断右移初始 l = -1, r = N当 l = N-2, N-2+1 = N-1,当 l = N-1,N-1+1 = N = r, 退出while, 左指针不越界情况2: arr = [1, 2, 3, 4, 5, 6], key = 0
2021-10-14 19:58:26
987
原创 Pyspark 数据类型及转换及列表转单列
Pyspark 数据类型及转换Spark 数据类型ByteType, 1-byteShortType, 2-byteIntegerType, 4-byteLongType, 8-byteFloatType, 4-typeDoubleType, 8-byteDecimalType, arbitrary sided decimal numbersStringTypeBinaryTypeBooleanTypeTimetampTypeDateType. Year month, da
2021-10-14 11:42:01
5991
基于设计模式的画图程序
2018-03-25
城市公交查询软件
2017-01-06
内部排序算法的比较已知技术参数和设计
2016-12-20
nohup 运行python程序不能导包
2022-07-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人