
python
skj1995
数据挖掘、机器学习、Python编程
展开
-
Linux下pycharm+python2+tensorflow安装流程
Linux下pycharm+python2+tensorflow安装流程可以分成以下几个步骤:(1)安装pycharm一般就是解压,然后在bin下面执行./pycharm.sh就可以了参考链接:https://baijiahao.baidu.com/s?id=1622347860160507809&wfr=spider&for=pc(2)安装python2因为项目使用的是python2+tensorflow,所以我也需要在pycharm下有这两个环境,下面说一下我的安装过原创 2021-02-16 18:22:28 · 623 阅读 · 0 评论 -
pandas DataFrame高效编程方法: 根据多列的值做判断,生成新的列值,其中多列的值是包含多个值的数据类型
一.遇到的问题描述:我遇到问题的数据比较复杂,下面以比较简单的数据为例说明问题,所以这些数据的含义是没有意义的,可以忽略数据的的具体意义。数据如下所示:import numpy as npimport pandas as pddata = {'city': [{'Beijing':1, 'Shanghai':2,"lanzhou":7}, {'Guangzhou':3, 'Shenz...原创 2018-10-16 11:59:16 · 4469 阅读 · 0 评论 -
TensorBoard打不开的解决方法
先自查以下问题,99%能解决:1.打印日志的log不能包含中文名2.使用命令:tensorboard --logdir C:\tensorboardLog打不开的话,可以尝试下面的命令:tensorboard --logdir C:\tensorboardLog --host=127.0.0.1其中的C:\tensorboardLog是日志存放目录,按照自己log位置所在目录修改3.如果还不行,尝试在C盘后面加//,也就是命令变成:tensorboard --logdir C://t原创 2020-08-02 10:15:09 · 2017 阅读 · 2 评论 -
错误ModuleNotFoundError: No module named ‘tensorflow.contrib‘的解决方法
我的Python为3.7版本,自动安装的TensorFlow是2.2版本,但是运行的程序中有:from tensorflow.contrib.rnn import RNNCell会导致错误:ModuleNotFoundError: No module named 'tensorflow.contrib',这是由于新版本的tensorflow里面不包含tensorflow.contrib包,于是我按照网上说的,将TensorFlow降为版本1.13,但是会出现其他问题,这是因为1.13版本的tens原创 2020-07-06 22:31:11 · 57058 阅读 · 17 评论 -
如何使用PS根据车辆轨迹数据得到车辆的在地图上的时空轨迹分布图
一.问题如何根据车辆的轨迹,将车辆一天在路网中访问某个区域的频繁程度,表示在地图上,获取车辆轨迹点额时空特性?想要的效果图如下所示:这张图表示某辆车某一天内在苏州工业园区路网中访问某段路的频繁模式。我们有的苏州工业园地图如下:这个地图的经纬度范围是:经度:[120.6562051531,120.7962792880],纬度:[31.2847987240,31.35663...原创 2020-04-29 17:58:37 · 2313 阅读 · 0 评论 -
matplotlib画图,这一篇就够了(使用Python画常见的柱状图、折线图、直方分布图、二维和三维的散点图,热力图)
目录画柱状图画折线图画直方分布图改进(自由设置坐标刻度、横纵坐标重合)画二维散点图(包括坐标刻度用科学计数法)画三维散点图画热力图为了达到美观的效果,本文给出的例子都稍微有点复杂。但是使用起来并不困难,只需要将对应位置的变量替换成自己的数据即可。代码看起来有点多是为了便于理解,所有的参数都加了注释,实现功能的代码量并不是很多,对于只想使用基础画图功能的,可以通过删减参数达到简化的目的。画柱状图...原创 2020-04-28 21:03:08 · 1871 阅读 · 2 评论 -
python常用编程记录
python常用编程记录DataFrame数据筛选两列DataFrame更改索引用reset_index重新生成顺序索引reindex重置索引只改变某一列的列名dataframe中将某一列的值整体映射为另一个值的集合获得dataframe行名和列名查看python版本dataframe删除某一列Dataframe行列索引转置DataFrame如何将行索引设置为新的一列创建DataFramepyth...原创 2020-03-27 22:24:13 · 300 阅读 · 0 评论 -
错误NameError: name 'ModuleNotFoundError' is not defined
一.问题:我在python中使用语句except (ImportError, ModuleNotFoundError):时出现错误:NameError: name 'ModuleNotFoundError' is not defined二.解决方法ModuleNotFoundError只在python3.6版本及以后出现,在之前版本都没有,我的是python3.5,所以不...原创 2020-03-23 12:09:32 · 2047 阅读 · 0 评论 -
如何快速地安装正确的pytorch版本
一.遇到的问题pytorch的安装可以在官网https://pytorch.org/中找到对应的命令:下图就是官网中指定版本生成的命令,此时pytorch是1.4,操作系统是Windows,使用pip命令进行安装,对应的底层语言平台是python,cuda是用于GPU的包版本,此时生成的命令是pip install torch===1.4.0 torchvision===0.5.0...原创 2020-03-23 10:06:52 · 8276 阅读 · 7 评论 -
Python中使用matplotlib画图时各种大小设置
我们会说明如何设置图中:曲线拐点形状的大小,横纵坐标刻度、标签的大小、图例中形状的大小比如要画下面这张图:代码如下:import numpy as npimport pandas as pdimport matplotlib.pyplot as pltfrom pylab import * FontSize=15x=range(0,24)#下面四句对应图中四条线的纵...原创 2020-02-05 19:05:02 · 13325 阅读 · 0 评论 -
pytorch保存训练好的模型及pytorch自己定义损失函数
一.pytorch保存训练好的模型假设你的模型定义为:class Net(torch.nn.Module): ......两种方式:仅仅保存和加载模型参数:#保存PATH="./model.pkl"the_model = Net()torch.save(the_model.state_dict(), PATH)#加载the_model = Net()th...原创 2020-01-05 15:43:45 · 1186 阅读 · 0 评论 -
错误ImportError: No module named ‘torch‘
这是没有安装torch造成的网上有好多的步骤如下:登录pytorch官网,点击get start,按照自己的电脑配置得到命令进行下载,我的电脑是win10,Python版本为3.7,没有cuda的CPU,所以产生的命令如下:但是运行这个命令后老是出现socket timeout的问题,就是网络长时间连接不上导致的问题。后来我连接了自己的VPN,速度比较快,成功下载。参考链接...原创 2020-02-05 13:15:09 · 4627 阅读 · 0 评论 -
Python高效编程总结(持续更新中)
平时在使用Python编程的过程中,发现很多小技巧,但是对执行时间影响非常大,特此在这里总结一下,有新的就会更新,先把遇到的记录在这里。1.列表list的in操作是经常用到的,也就是判断某个元素是否存在于某个list中,时间复杂度为O(n),n为list中元素的个数而set的判断in操作时间复杂度为O(1),这样我们以后在判断某个元素是否存在于list,尤其当这个in操作需要执行多次时,将...原创 2019-10-21 19:25:46 · 565 阅读 · 0 评论 -
A connection to the notebook server could not be established. The notebook will continue trying to
问题:我在使用浏览器输入服务器地址,打开JupyterNotebook的时候遇到问题:A connection to the notebook server could not be established. The notebook will continue trying toreconnect. Check your network connection or notebook s...原创 2019-08-03 11:39:24 · 13712 阅读 · 2 评论 -
Python中list转换为numpy数组出现的问题
问题为:现有的数据list(LuKou_train_DF["KnownCameraTrajec"])是一个1000000*30的list数据类型使用np.array(list(LuKou_train_DF["KnownCameraTrajec"]))转换后得到的应该是一个ndarray的数组,可是我得到的结果是这样的:可以看到:只有外面一层的数据类型有变化,里面一层的数据...原创 2019-06-11 21:16:29 · 15539 阅读 · 6 评论 -
把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组
题目描述:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。python实现:方法一:二分查找法:思路:首先判断数据长度是否为0,如果为0,返回0如果不为...原创 2019-06-10 21:56:55 · 486 阅读 · 0 评论 -
pandas中将每一行数据拆分成多行的方法
一.应用场景用pandas处理数据时,我们经常会遇到将一行拆分成多行,或者将一列拆分成多列的方法,今天主要讲第一个问题,第二个问题下次讲。举个例子:我现有的数据如下:其中TrainData是我需要将它的一行分成多行的数据,上面的图片没有显示完全,我们读取TrainData的第二行,详细数据如下:LuKou_train_DF["TrainData"][1]='1902 1850 5...原创 2019-06-04 11:34:03 · 9278 阅读 · 1 评论 -
python中的append是浅拷贝
Python中的append()操作是浅拷贝操作,也就是说Python 在执行append时并没有拷贝这个对象,而只是拷贝了这个对象的引用,如果不注意这一点的话会导致出乎意料的错误。比如执行下面的代码:M=['a','b','c','d']MyList=[['a','b','c','d']]temp=M[1]M[1]=M[0]M[0]=tempMyList.append(M)...原创 2019-06-12 18:31:41 · 1209 阅读 · 0 评论 -
dataframe中重新设置索引
cameraDF=cameraDF.reset_index(drop=True)#重新设置列索引cameraDF是一个dataframe变量。就是说之前的cameraDF的列索引不是从0开始按1有序递增的,用.reset_index(drop=True)函数会根据行数生成新的从0开始按1有序递增的列索引。...原创 2018-11-03 17:44:11 · 27463 阅读 · 0 评论 -
python中的Dataframe中用groupby后如何得到每组的行数(或者叫每组的大小)
我之前的数据myDF是这样的:这只是其中的一部分现在我想根据 车的ID对数据进行分类,然后得到每种车的记录数,可以进行如下操作:myDF=myDF.groupby(myDF["车的ID"]).agg("count")得到的结果如下:可以看到每一行里面除了车的ID和车的方向这一列,其余列的值都一样 。车的方向这一列跟其他列的计数不一样是因为原数据中这一列有的值为NaN。因此...原创 2018-11-05 19:22:35 · 9024 阅读 · 3 评论 -
python中创建多维列表时出现的问题
初始化列表时,我们使用如下的方法创建一定长度的一维列表是可行的:但是当我们用这样的方法创建一个多维列表,这里以二维列表为例,在赋值时会出现错误:如上图所示,我们的本意是只给第0行第0列的元素赋值,但是整个第0列的元素都发生了变化,原因是[[0]*MyLen]*MyLen产生的是MyLen个对[0]*MyLen列表的引用,所以更改其中一个引用,其他引用也会发生相同的变化,是一种浅拷贝...原创 2019-03-24 14:24:47 · 873 阅读 · 0 评论 -
Python3中如何读取不确定行数的数据
读取行数不确定的方法,比较简便的一般有两种方法:1.用sys.stdin.readlines()这种是将输入全部一次性读入一个列表中,缺点是每行的末尾的换行符“\n”也被读入了,需要再写一个循环对每行进行处理,将换行符去掉,可以这样编程:import sysInputList=sys.stdin.readlines()for i in range(len(InputList))...原创 2019-04-01 17:13:12 · 7864 阅读 · 0 评论 -
字节跳动2019年春季实习招聘机器学习算法岗第二批笔试题及解答
以下解答是我自己的解法,有待优化,仅供参考!第一题:.题目描述公司的程序员不够用了,决定把产品经理都转变为程序员以解决开发时间长的问题。在给定的矩形网格中,每个单元格可以有以下三个值之一:.值0代表空单元格;.值1代表产品经理;.值2代表程序员;每分钟,任何与程序员(在4个正方向上)相邻的产品经理都会变成程序员。返回直到单元格中没有产品经理为止所必须经过的最小分钟数。如...原创 2019-04-15 17:25:39 · 1262 阅读 · 3 评论 -
Anaconda下安装python-Levenshtein常见错误
1.由于工作需要,我需要安装python-Levenshtein:我用了有人给出的方法:https://blog.youkuaiyun.com/work_and_study/article/details/78048125即就是在Anaconda prompt下执行:pip install python-Levenshtein出现错误:error: Microsoft Visual C++...原创 2019-04-03 15:39:09 · 3116 阅读 · 0 评论 -
阿里2019年实习春招算法机器学习笔试编程题及解答
编程题有两道,我在这里写出自己的基础解法以供参考,有优化的地方的话请指正。第一道:班上同学聚餐吃火锅,一锅煮了的M(1<=M<=50)个鱼丸和N(1<=N<=50)个肉丸,现欲将M个鱼丸和N个肉丸分到K(1<=K<=50)个碗中,允许有空碗,鱼丸和肉丸不允许混在同一个碗里,问共有多少种装法。假设碗足够大,能装50个鱼丸或者50个肉丸,碗之间也没有区别,因...原创 2019-04-13 13:23:28 · 3413 阅读 · 1 评论 -
错误:‘Series‘ objects are mutable, thus they cannot be hashed
问题:我在使用pandas里面的groupby函数:代码如下:People_features["sid"].groupby(People_features["pid"],People_features["click_mode"]).agg("count")我本意是统计整个数据People_features中每个pid里面每种click_mode的出现次数,然后出现了这个问题...原创 2019-04-22 12:08:28 · 19367 阅读 · 0 评论 -
HUAWEI2019实习笔试题
以下是个人的解法,有待优化,仅供参考。顺序不是按正常顺序:第三道:题目描述:小王的保险箱密码是个升序排列的数字串。 但是小总是记不住他的密码,于是小王将他的密码加密后保存在了一个文本文件里,加密的流程如下:1.用数字的英文单词来代替数字本身。比如1134699变成onethreefoursixninenine2.将上诉字符串使用"小王加密算法”进行处理。该算法会按照某种规则来改...原创 2019-04-26 13:10:14 · 1419 阅读 · 0 评论 -
python里面的深拷贝和浅拷贝
执行下面的程序:a=[[1,2],[3,4]]b=ab[0][1]=34print(a)你会发现输出是:[[1, 34], [3, 4]]说明当改变b的值的时候,a的值也被改变了。这就是Python里面的浅拷贝。要想在改变b的情况下保留原来的a,要使用深拷贝b=copy.deepcopy(a),(别忘了导入import copy)这样在改变b的时候a不会改变。...原创 2019-04-14 22:27:57 · 141 阅读 · 0 评论 -
Python的读入方式
Python常见的交互读入方式有两种:import syssys.stdin.readline()和input()两者之间的联系:input()和sys.stdin.readline()都是将输入读成字符串格式,input的实现其实也是调用了sys.stdin.readline()区别:input()读入的字符串去掉了一行的结尾"\n",sys.stdin.rea...原创 2019-04-15 14:44:59 · 476 阅读 · 0 评论 -
用Python实现最小生成树的Prim算法
用Prim算法求解无向连通图的最小生成树:输入的图如下所示:期望得到的结果:输入例子如下所示:6 100 1 70 2 40 3 30 5 71 3 61 4 51 5 22 3 82 4 53 4 1代码如下:VexNumber,EdgeNumber=list(map(int,input().split()))#读取顶点...原创 2019-04-29 21:11:00 · 1418 阅读 · 0 评论 -
用matplotlib画空心散点图
我之前的图是这样的:我想要把图里面的散点变成空心的方格,如下图所示:但是matplotlib中画散点图的函数plt.scatter(x_values, y_values,c='b',s=50,marker = 's')中表示形状的参数marker没有空心的方框这个选项,因此我们可以这样操作:将表示颜色的参数"c"设置为“w”表示白色,用一个参数edgecolors,表示边框,设...原创 2019-05-15 12:18:57 · 11357 阅读 · 2 评论 -
用Python判断矩阵是否为可逆矩阵
用np.linalg.det()求解矩阵A的行列式|A|,如果行列式为0,不可逆,否则可逆。原创 2019-05-11 20:36:51 · 10647 阅读 · 0 评论 -
用matplotlib将数据的PDF和CDF放在同一张图里面,并画出包络线
先放出最终的图:左边是分布直方图,右边是累积概率分布图,黑色的是CDF的包络线实现步骤如下:步骤一:将原来的直方图表示成左边这种只显示折线的形式:首先我们需要实现分布直方图,使用函数plt.hist()z1=plt.hist(list(my_DF["最短路径的长度"]), 30, normed=1,color="red",alpha=0.75,histtype='ste...原创 2019-05-16 14:31:09 · 2823 阅读 · 0 评论 -
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型的Python实现
思路是用两个栈A和B,A是队列的正序存储,B栈是队列的倒序存储。队列和栈A栈B的示意图如下所示: 在队列Push时的操作为:将数据直接Push进栈A中;在队列Pop时将数据从B中Pop在做这两个操作的前提是栈A和栈B中都保持着当前队列中的元...原创 2019-06-05 19:16:29 · 1036 阅读 · 0 评论 -
ValueError: could not convert string to float错误的解决办法
错误:ValueError: could not convert string to float出错的地方为:month_diff = int(float(date_consumed[-6:-4])) - int(float(date_received[-6:-4])),这一句包含在函数get_time_diff中我的目的是提取两个时间字符串里面的月份,然后计算月份差出错的原因...原创 2018-10-10 16:58:30 · 124305 阅读 · 2 评论