学习笔记1—python基础

python -m pip install --upgrade pip (相关用法:https://pip.pypa.io/en/latest/user_guide/#installing-from-wheels)
   查询已经安装的包:pip list
   如果“pip install 工具包名称”安装不上,那就下载目标软件到安装目录下的pkgs, 然后通过Anaconda Prompt命令窗口进入该路径下,再输入“pip install 工具包名称”命令进行安装。
pip install 工具包名称

   9、设置colorbar 的颜色:

方法一:

colors = ['white', '#FFA500','#FA8072','#FAA460']
cmap = mpl.colors.ListedColormap(colors)
plt.imshow(X,cmap=cmap)
plt.colorbar()
方法二:("hot,autumn, jet【推荐色】" 来自:https://blog.csdn.net/liuchengzimozigreat/article/details/90477501
#plt.imshow(X,cmap=plt.cm.hot)
plt.imshow(X,cmap=plt.cm.autumn)
plt.colorbar()

a = a.tolist()
a =np.array(a)
17、List的基本操作:1)list.append(list1),是将list1作为一个数据项、一个元素,追加在list中;2)list.extend(list1),是将list1与list相连接。
18、找到矩阵中最值,并返回行和列:re = np.where(results == np.min(results[1:80,1:80])),使用x == np.max(x) 获得一个掩模矩阵,然后使用where方法即可返回最大值对应的行和列。 where返回一个长度为2的元组,第一个元素保存的是行号,第二个元素保存的是列号。
x == np.max(x)
abs()
24、如何导入一个项目:
   关于python的集成开发环境有很多种,比如PyCharm,Spyder等。楼主在初学python时使用的是Spyder,在打开项目时遇到一点小问题,记录一下解决方法。。
   首先在想试用Spyder新建项目时,习惯性的选择了工具栏中的“File”,紧接着就可以看到有一个“New file...”,但显然,这样只能创建一个文件,而不是想要的项目。
   
   之后仔细查看,会发现在同样在工具栏,有独立的一个“Projects”,就可以创建项目了...

接下来关于打开项目,在使用Scrapy框架创建爬虫后,发现不能顺利打开项目,会遇到“XXX is not a Spyder project!"                     

 

对比使用Spyder创建的项目以及自己没有使用Spyder创建的项目,会发现在第一级目录下,Spyder创建的项目多一个.spyproject文件夹,打开后是四个配置文件,想必问题就出在这里了。将这个文件夹放置于自己没有使用Spyder创建的项目的一级目录下,就可以顺利打开自己的项目了。

参考原文:https://blog.csdn.net/VeastLee/article/details/79698566

25、python 里 np.array 的shape ( ,)与( ,1)的区别

>>> import numpy as np
>>> x = np.array([1, 2])
>>> y = np.array([[1],[2]])
>>> z = np.array([[1,2]])
>>> print(x.shape)
(2,)
>>> print(y.shape)
(2, 1)
>>> print(z.shape)
(1, 2)
x[1,2]的shape值(2,),意思是一维数组,数组中有2个元素
y[[1],[2]]的shape值是(2,1),意思是一个二维数组,每行有1个元素
z [[1,2]]的shape值是(1,2),意思是一个二维数组,每行有2个元素
参考原文:https://blog.csdn.net/weixin_39449570/article/details/78645618

26、mean, (std)用法:
 import numpy as np
num1 = np.array([[1,2,3],[2,3,4],[3,4,5],[4,5,6]])
now2 = np.mat(num1)
now2
matrix([[1, 2, 3],
        [2, 3, 4],
        [3, 4, 5],
        [4, 5, 6]])
np.mean(now2) # 对所有元素求均值
3.5
np.mean(now2,0) # 压缩行,对各列求均值
matrix([[ 2.5,  3.5,  4.5]])
np.mean(now2,1) # 压缩列,对各行求均值
matrix([[ 2.],
        [ 3.],
        [ 4.],
        [ 5.]])
原文:https://blog.csdn.net/taotiezhengfeng/article/details/72397282
27、类比maltab中函数:
1)
python中的 np.tile()相当于 np.repmat()
2)data(j,:) 等价 y_score[[j],:]
28、返回格式:
return (sel_fea, fea_num)
29、生成随机数:
np.random.randn(n_samples)
30、将类别二值化:
y = label_binarize(y, classes=[0, 1, 2])
31、生成随机噪声:
# Add noisy features to make the problem harder
random_state = np.random.RandomState(0)
n_samples, n_features = X.shape
X = np.c_[X, random_state.randn(n_samples, 200 * n_features)]
50、在这里我们介绍两个拼接数组的方法np.vstack():在竖直方向上堆叠; np.hstack():在水平方向上平铺
33、spyder中让生成的图像单独在窗口中显示
1)
生成图像在窗口中单独显示的命令:%matplotlib空格qt 在python3的版本中是qt5
2)生成图像在命令行中单独显示的
命令%matplotlib空格inline
34、矩阵的转置:
data = data.T
35、python将nan, inf转为特定的数字:
import numpy as np
a = np.array([[np.nan, np.nan, 1, 2], [np.inf, np.inf, 3, 4], [1, 1, 1, 1], [2, 2, 2, 2]])
where_are_nan = np.isnan(a)
where_are_inf = np.isinf(a)
a[where_are_nan] = 0
a[where_are_inf] = 0
36、将list中某一个元素赋值给变量:a = list[5]
37、round使用:np.round([3.00,4.00,5.2]) ----> [3,4,5]
38、修改变量的数据类型:a.astype(np.int)---->将数组a里面数据类型修改为整数型
39、读出路径的上级,上上级目录:
  #当前文件的路径
  pwd = os.getcwd()
  #当前文件的父路径
  father_path=os.path.abspath(os.path.dirname(pwd)+os.path.sep+".")
  #当前文件的前两级目录
  grader_father=os.path.abspath(os.path.dirname(pwd)+os.path.sep+"..")
idx = np.where(a > 2)

  # coding=utf-8
  import scipy.io as sio
  import numpy as np
  data = sio.loadmat(r'C:\Users\xiligey\Desktop\C3.mat')  # 把这个路径改成你的mat路径即可
  print('scipy读取三维矩阵的初步结果: \n%s\n' % data)
  result = data['C']
  print('提取出其中的三维数组: \n%s' % result)
48、在python中,读取mat文件,并存为.npy,代码如下:
#方法一
import mat4py as mt
data_path = 'E:/structural_network/res_NetPro_hcc/NBS/Edge_connect_P.mat'
data_FC_ext = mt.loadmat(data_path)
for k_ex, v_ex in data_FC_ext.items():
    c_ex = k_ex   
    correlation_matrix = np.mat(v_ex)
np.save('correlation_matrix.npy',correlation_matrix)
#方法二
from scipy.io import loadmat
coords = loadmat('E:/structural_network/coords_MNI_AAL90.mat')
coords = coords['coords_MNI_AAL90'
np.save('coords.npy',coords)
#方法三
import h5py
mat = h5py.File('E:/Data/SCA3.04.28/Results/corr/diffROIsignal_gradient.mat','r')
data = mat.get('diffROIsignal_gradient')
data = np.array(data)
data_t = np.transpose(data)

49、在python中,读取npy文件,并存为.mat文件,代码如下:

import numpy as np
import scipy.io as sio
mat = np.load('F:/coupling_FC_SC_ASD/child_adol/toConsesusNet_stru/adol_SCN_asd_group_binary.npy')
sio.savemat('adol_SCN_asd_group_binary.mat',{'adol_SCN_asd_group_binary':mat})

50、在python中,读取Excel文件,代码如下:

path_H_2 = 'E:/project//H_reg_site/H_2_reg_site.xlsx'
H_1_reg = pd.read_excel(io=path_H_1, sheet_index=0, header=0)

51、在python中,读取比较大的.mat文件,代码如下:

     data = h5py.File(path,'r')

52、在python中,通过Anaconda Prompt窗口运行python的代码

52、在python中,删除数据中某行或者某列:scale = np.delete(scale,[9,10],axis = 1) # axis =0 删除9,10行,axis = 1 删除9,10列,

53、python中 list 与数组的互相转换:(1) list转array np.array(a);(2)array 转list a.tolist()

54、python中 numpy.shape用法:(1) y.shape[0];(2) np.shape(y)[0] (注意:y为数组,0表示第一维度)

55、python中 两个向量拼接用法:(1) 行拼接:np.vstack(());(2) 列拼接:np.hstack(()), 比如:X_test_new = np.hstack((fea_1_test,fea_2_test,fea_3_test))。

56、python中 计时器代码:import time; time_start = time.time(), time_end = time.time(); time_c = time_end - time_start; print('time cost', time_c,'s')。

57、python中 独立样本t检验和配对t检验:from scipy.stats import ttest_rel, ttest_ind; ttest, pval = ttest_rel(X_train_asd,X_train_td) ;ttest, pval = ttest_ind(X_train_asd,X_train_td,equal_var = 'false')。

 

 

 

 

 

 


 




 


posted @   何弈  阅读(897)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
你好
点击右上角即可分享
微信分享提示