python
努力干活还不粘人的小妖精
xioapiha
展开
-
python使用pandas获取数据行名和列名
python使用pandas读取csv数据:import pandas as pddf = pd.read_csv("filename.csv")获取数据部分:data = df.values获取行名:rownames = df.index获取列名:colnames = df.columns原创 2021-01-07 16:10:26 · 24792 阅读 · 2 评论 -
python读取.mtx文件
mtx文件是按照稀疏矩阵格式存储的矩阵数据,可以按照以下步骤读取:安装scanpy包 pip install scanpy 文件读取 import scanpy as scadata = sc.read(filename)data = adata.X 第一行read之后返回的是annData,第二行通过.X操作得到的是矩阵数据 转换为稠密矩阵 data = data.todense() 直接得到的矩阵是稀疏形式的,通过todense函数可转换为稠密矩阵.原创 2020-12-10 19:07:37 · 4435 阅读 · 5 评论 -
pytorch将向量拉成对角阵(计算图的度矩阵)
在使用pytorch编写神经网络时,可能会用到创建对角阵(例如图邻接矩阵的度矩阵)。最简单的方法是创建一个随机的矩阵然后循环赋值,但在数据量较大时可能会比较慢,此时可以先获得对角阵对角线上的值构成的向量,然后将该向量拉成对角阵。例如,有一邻接矩阵A,现在要求其度矩阵D(对角阵,每一行的对角元是A中对应节点的度),举例如下:import torchA=torch.ones(3,3)print(A)d=torch.sum(A,dim=1)print(d)D=torch.diag(d)print(原创 2020-07-29 09:36:08 · 7859 阅读 · 2 评论 -
python不用for循环计算一个向量和多个向量的距离
令x为一行向量,M为一矩阵(每行为一个样本),现计算x和M中每个向量间的距离,不使用for循环,代码如下:dis = np.sqrt(np.sum(np.square(x - M), 1))原创 2020-07-10 15:46:34 · 758 阅读 · 0 评论 -
pycuda int型变量传递
使用pycuda进行GPU编程时,参数转换与传递是必不可少的一步。通常在进行数组传递时,可以用一般方法进行内存分配并转换,例如:import numpya = numpy.random.randn(4,4)a = a.astype(numpy.float32)a_gpu = cuda.mem_alloc(a.nbytes)cuda.memcpy_htod(a_gpu, a)通过以上步...原创 2019-03-17 19:55:56 · 979 阅读 · 1 评论 -
python使用skcuda包实现GPU上的矩阵乘法,矩阵求逆
导入需要的包:import pycuda.gpuarray as gpuarrayimport pycuda.autoinitimport skcuda.linalg as sklin创建两个矩阵:a = numpy.random.randn(4, 4).astype(numpy.float32) #为了后续GPU上的计算顺利进行,矩阵数值设定为float32b = numpy.ra...原创 2019-03-26 09:45:18 · 2717 阅读 · 0 评论 -
报错 No module named 'email.utils'; 'email' is not a package解决方法
转自https://blog.csdn.net/zhutianfu521/article/details/79040533运行python程序报错 :import email.utilsModuleNotFoundError: No module named ‘email.utils’; ‘email’ is not a package最基本的就是安装这个模块,但是email是pytho...转载 2019-07-09 15:39:44 · 1666 阅读 · 0 评论 -
解决python发邮件报错(554, 'DT:SPM 163 smtp11,D8CowA..
报错信息如下:将发送人邮箱也加入收件人地址中即可解决报错。更改之前代码:import smtplibfrom email.mime.text import MIMETextfrom email.utils import formataddrfrom email.mime.application import MIMEApplicationfrom email.mime.image ...原创 2019-07-09 16:10:41 · 2899 阅读 · 0 评论 -
centos下python安装opencv(cv2)
使用anaconda,只需在命令行执行以下命令:conda install -c https://conda.anaconda.org/menpo opencv3即可成功安装,安装之后可以进入python之后通过:import cv2验证是否安装成功。...原创 2019-07-17 19:35:10 · 2341 阅读 · 0 评论