python
rs_gis
常羡人间琢玉郎,天应乞与点酥娘。尽道清歌传皓齿,风起,雪飞炎海变清凉。
万里归来颜愈少,微笑,笑时犹带岭梅香。试问岭南应不好,却道:此心安处是吾乡。
------------------------————————————愿你阅尽千帆,归来仍是少年
展开
-
numpy寻找众数以及第二多的数
def get_mode_index(target_arr): ''' 寻找众数,返回众数 寻找第二多的数,返回该数 ''' vals,counts = np.unique(target_arr,return_counts=True) #返回一位数组唯一值,唯一值的个数 the_mode_index = np.argmax(counts) #返回count最大值的索引。(寻找众数的位置) the_mode = vals[原创 2021-12-19 22:10:47 · 1501 阅读 · 0 评论 -
为什么for循环嵌套顺序会影响性能?
import datetimestart2 = datetime.datetime.now()count2 = 0for i in range(100): for j in range(1000000): count2 += 1end2 = datetime.datetime.now()print(end2 - start2)0:00:14.588081start1 = datetime.datetime.now()count1 = 0for i in range(1000原创 2021-11-09 11:42:49 · 446 阅读 · 0 评论 -
python对数组进行padding
概述numpy.pad(array,pad_width,mode,**kwargs)可以将数组array按指定的方法填充成指定的形状。其中:array:表示N维数组pad_width:每个轴边缘填充的数值。mode:表示填充方法。constant:常数填充,constant_values=(x,y)表示前面用x填充,后面用y填充,无constant_values参数时默认填充0一维数组填充import numpy as nparray_one = np.array([1,2,3,4])原创 2021-11-01 09:27:31 · 3782 阅读 · 0 评论 -
遥感数据的行列号对应的长和宽
遥感数据是栅格数据,栅格数据有行列号,XY,以及长宽,他们之间的对应关系如下:col = width = X = 7205row = height = Y= 12786原创 2021-10-03 12:49:57 · 1003 阅读 · 0 评论 -
python如何使用gdal扩充影像
import osimport gdalimport numpy as npimport pandas as pdimport datetimeimport globdef readTif(fileName): dataset = gdal.Open(fileName) if dataset == None: print(fileName + "文件无法打开") width = dataset.RasterXSize heig原创 2021-10-03 02:10:25 · 273 阅读 · 0 评论 -
python使用gdal读写栅格数据
import osimport gdalimport numpy as npimport pandas as pddef readTif(fileName): dataset = gdal.Open(fileName) if dataset == None: print(fileName + "文件无法打开") width = dataset.RasterXSize height = dataset.RasterYSize原创 2021-10-02 20:14:57 · 1426 阅读 · 1 评论 -
python面试笔记一:基础篇
一、python简介python是一门脚本语言,更是解释性语言。特点:简洁,跨平台。解释性语言和编译型语言的区别二、python数据类型python的五个数据类型python有五个标准的数据类型:数字,字符串,列表,元组,字典。其中,元组,列表,字典属于结构数据类型。2.1 字符串----string#字符串类型str(123) a = "123"对于字符串的操作有:转义字符串(换行符,制表符,回车等);字符串运算(+,*);字符串处理函数;格式化字符串%c,%d,%s等等2.2原创 2021-09-25 00:46:12 · 101 阅读 · 0 评论 -
csv文件合并、去重
import pandas as pdimport glob outputfile=r'G:\shiyabn\LZQ\1108_check\hebing.csv'csv_list = glob.glob(r'G:\shiyabn\LZQ\1108_check\*.csv')print('共发现%s个CSV文件'% len(csv_list))print('正在处理')def hebing(csv_list): for inputfile in csv_list: f原创 2021-05-06 20:26:08 · 1138 阅读 · 0 评论 -
in method ‘Geometry_Contains‘, argument 2 of type ‘OGRGeometryShadow *‘
文章目录一、需求和问题二、分析问题三、解决问题一、需求和问题需求:我想找出pt这个坐标所在的图层的polygon的位置我的代码如下:import osfrom osgeo import ogrfrom shapely.geometry import Polygon, Point, MultiPolygon#我的图层是多polygon数据polygon_1106 = r'G:\shiya\lyr_name.shp'ogr.UseExceptions() #捕获异常driver = ogr原创 2021-04-25 20:34:55 · 1156 阅读 · 2 评论 -
python中anaconda如何安装gdal
在anaconda对应的虚拟环境中运行如下命令conda install -c conda-forge gdal原创 2021-04-25 14:31:04 · 335 阅读 · 0 评论 -
python如何去掉list中的中括号、二级列表中的括号、双引号
一、去掉二级列表中的括号list_1 = [[1,2,3],[4,5],[6]]list_2 = [int(x) for item in list_1 for x in item]print(list_2)结果如下:[1, 2, 3, 4, 5, 6]二、去掉外面的括号list_0 = [1, 2, 3, 4, 5, 6]list_3 = ','.join(str(i) for i in list_0)list_4 = ' '.join(str(i) for i in list_0)原创 2021-04-24 13:55:47 · 43300 阅读 · 9 评论 -
pytorch学习笔记一:认识pytorch
一、什么是pytorchPyTorch是一个深度学习框架,它是基于Python的科学计算软件包,可实现两个广泛的目的:1、替代NumPy,以使用GPU和其他加速器的功能。2、一个自动微分库,对实现神经网络很有用所谓的框架就是别人把底层做好了,应用者只需要在框架上搭建自己的城堡就行二、什么是torchTorch是一个与Numpy类似的张量(Tensor)操作库,与Numpy不同的是Torch对GPU支持的很好三、使用pytorch需要理解的几个概念3.1 张量张量是一种特殊的数据结构,与数组原创 2021-02-06 23:16:56 · 191 阅读 · 0 评论 -
.isin的用法
.isin是pandas中DataFrame的布尔索引,可以用满足布尔条件的列值来过滤数据。用法如下。1、随机生成一个5行4列的数据import pandas as pddf=pd.DataFrame(np.random.randn(5,4),columns=['A','B','C','D'])print(df)2、布尔索引据举例print(df.A>0)print(df[df.A>0])3、给原数据增加一列df['E]=['a','a','c','b','e']p原创 2020-09-01 10:12:44 · 9271 阅读 · 1 评论 -
python绘图
文章目录一、绘图参数二、绘制单条曲线上数据Figure:相当于画板,画纸的载体Axes/Subplot:相当于画纸plot:相当于笔一、绘图参数更多参数详见官网链接axes与axis的区别另外一篇博客另外一篇知乎p.line(x, y, **kwargs)参数说明x(:class:~bokeh.core.properties.NumberSpec ) : x坐标。y(:class:~bokeh.core.properties.NumberSpec ) : y坐标。line_alp原创 2020-06-28 18:20:29 · 272 阅读 · 0 评论 -
python中gdal操作矢量文件
一篇很好的博客https://blog.csdn.net/summer_dew/article/details/87930241?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.non原创 2020-06-10 18:27:33 · 867 阅读 · 0 评论 -
深度学习第三章:小试牛刀
声明:此博客为个人笔记。参考书籍详见https://www.ituring.com.cn/book/1921前言本章用深度学习进行手写数字的识别。数据集采用MNIST。MNIST下载地址:https://github.com/oreilly-japan/deep-learning-from-scratch一、下载数据1、在文件中打开cmd2、输入以下命令,并按回车键3、数据集下载完成注意:mnist是上述参考书提供的python脚本,该脚本支持从下载MNIST数据到将这些数据集转换成原创 2020-05-31 22:58:48 · 522 阅读 · 0 评论 -
深度学习第二章:神经网络的原理和实现
声明:此博客为个人笔记。参考书籍详见https://www.ituring.com.cn/book/1921一、前言神经网络和感知机的关系:感知机是神经网络的基础。对于复杂的函数,感知机也隐含着能够表示它的可能性。但是,在感知机中,如何确定合适的、能符合预期的输入与输出的权重,还是由人工进行的。神经网络的出现就是为了解决上述问题。二、什么是神经网络2、1神经网络的结构神经网络结构如下:包括输出层、隐藏层(中间层)、输出层2、2神经网络的工作流程神经网络的工作流程:输入层:输入x1、x2、偏原创 2020-05-30 00:02:45 · 2080 阅读 · 2 评论 -
python如何根据后缀移动文件
直接上代码import osimport globimport shutilpath = r'G:\裁剪\2019GL_clip' #原始文件路径path_new = r'G:\裁剪\2019GL_cj' #目标文件路径list_name = os.listdir(path)print(list_name)print(len(list_name))for f in os.listdir(path): filename = os.path.join(path,f)原创 2020-05-12 14:53:05 · 656 阅读 · 0 评论 -
gdal打开哨兵2数据代码以及解决方法
文章目录一、代码二、报错报错原因:解决:一、代码import osimport gdalfile1 = r'G:\镶嵌\S2A_MSIL2A_20190725T040551_N0213_R047_T47SNC_20190725T074649.SAFE\MTD_MSIL2A.xml'data = gdal.Open(file1)print(file1)print(data)print(data.GetSubDatasets())结果如下:二、报错上述是解决问题之后的结果,第一次时,原创 2020-05-10 22:11:41 · 1207 阅读 · 6 评论 -
机器学习第一节:统计
一、统计学习的对象1、统计学习的对象是数据,统计学习从数据出发,提取数据的特征,抽象数据的模型,发现数据的知识。2、统计学习关于数据的基本假设是同类数据具有一定的统计规律性,这是统计学习的前提。同类数据是指具有某种共同性质的数据。只有当数据具有统计规律时,才可以用概率统计的方法加以处理。二、统计学习的目的预测和分析三、统计学习的方法监督学习(supervised learning)、非...原创 2020-04-29 18:55:54 · 199 阅读 · 0 评论 -
rasterio介绍以及代码
简介官网链接:https://rasterio.readthedocs.io/en/latest/intro.html1、原理与地理空间抽象数据库(GDAL)绑定的,用于访问不同类型栅格数据的包同时为C语言服务,而C语言存在指针问题,不精通C语言的人在使用与gdal绑定的包访问栅格数据时,很容易发生指针悬空问题。Rasterio的目标是为python量身打造地理空间抽象数据库,——即使用更...原创 2020-04-26 18:02:48 · 1697 阅读 · 0 评论 -
cartopy简介
1、什么是cartopycartopyCartopy 是一个开源免费的第三方 Python 扩展包,由英国气象办公室的科学家们开发,支持 Python 2.7 和 Python 3,致力于使用最简单直观的方式生成地图,并提供对 matplotlib 友好的协作接口。该工具包使用 LGPLv3 协议,代码托管在 Github 网站上。2、为什么要使用cartopy作为python2的殉葬品,B...原创 2020-04-25 18:42:07 · 4304 阅读 · 0 评论 -
python中用样本随机生成十个不同的训练样本
问题有样本文件 dataSample_new.csv , 从该样本文件中抽取2/3作为训练样本,共抽取十次,并且保证每次的训练样本不同。#导包import numpy as npimport pandas as pdimport gdalimport osimport globimport random#获取文件,定义训练样本大小my_path = r'G:\2018LZQ'...原创 2020-04-22 23:30:31 · 1224 阅读 · 0 评论 -
python如何将列表中的每个数字都保留两位有效数字
如何将list中的每个数字都保留两位有效数字关键:首先,将list转为numpy数组,然后对numpy进行操作,最后对操作完成的numpy再转为数组。直接附代码list_ori = list(pixel_real_recognition_value) #原始列表mid_np = np.array(list_ori) #列表转数组mid_np_2f =...原创 2020-04-15 00:03:04 · 22809 阅读 · 6 评论 -
jupyter连接不到kernel
一、问题使用jupyter Notebook打开新建好的虚拟环境之后出现A connection to the notebook server could not be established. The notebook will continue trying to reconnect. Check your network connection or notebook server conf...原创 2020-02-16 20:16:17 · 6660 阅读 · 0 评论 -
anaconda中jupyter虚拟环境配置和管理
anaconda中jupyter虚拟环境配置和管理问题描述:目前我使用的pycharm是使用的虚拟环境,但是现在我想要给jupyter notebook创建一个虚拟环境,但是遇到了问题。一、为什么要配置虚拟环境1、如果在一台电脑上,想开发多个不同的项目, 需要用到同一个包的不同版本, 如果使用上面的命令, 在同一个目录下安装或者更新, 新版本会覆盖以前的版本, 其它的项目就无法运行了。2...原创 2020-02-10 18:53:01 · 1745 阅读 · 1 评论