1、使用int() 获得数值输入
使用函数input()时,python将用户的输入解读为字符串,例如
age=input("how old are you ")
>>21
age
>>21#字符串21
函数int()让python将输入视为数值
age=input("how old are you?")
age=int(age)
>>18
age
>>18#数字18
2、list用法含义
list() 方法用于将元组转换为列表。
注意:元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中,列表是放于方括号中。
list(tup)#tup是元组
3、np.hstack()
np.hstack将参数元组的元素数组按水平方向进行叠加,行与行拼在一起
import numpy as np
arr1 = np.array([[1,3], [2,4] ])
arr2 = np.array([[1,4], [2,6] ])
res = np.hstack((arr1, arr2))
print (res)
#输出
[[1 3 1 4]
[2 4 2 6]]
import numpy as np
arr1 = [1,2,3]
arr2 = [4,5]
arr3 = [6,7]
arr = np.hstack((arr1, arr2,arr3))
print (arr)
#输出
[1 2 3 4 5 6 7]
4、计算协方差矩阵
import numpy
from sklearn.preprocessing import StandardScaler
X_std=StandardScaler.fit_transform(X)
cov_mat = np.cov(X_std.T)#X_std为预处理过的数据集
5、矩阵之间的点乘.dot()
Y = X_std.dot(matrix_w)#X_std与matrix_w均为矩阵
6、求协方差矩阵的特征值与特征向量
cov_mat = np.cov(X_std.T)
eig_vals, eig_vecs = np.linalg.eig(cov_mat)#计算特征值和特征向量
print('Eigenvectors \n%s' %eig_vecs)#特征向量
print('\nEigenvalues \n%s' %eig_vals)#特征值
7、排序里key=lambda _: _[0]的理解
sorted(data, key=lambda _: _[0]),若数据是列表或元组里的数据仍是列表与元组,那么在对内进行排序时需要指定排序的基准元素是哪个
例:key=lambda _: _[0]指以元组内各列表的第一个为准进行排序
>>>data = ([1, 4, 3], [3, 2, 5], [5, 1, 2], [4, 3, 1], [2, 5, 3])
>>>sorted(data, key=lambda _: _[0])
[[1, 4, 3], [2, 5, 3], [3, 2, 5], [4, 3, 1], [5, 1, 2]]
>>>sorted(data, key=lambda _: _[1])
[[5, 1, 2], [3, 2, 5], [4, 3, 1], [1, 4, 3], [2, 5, 3]]
>>>sorted(data, key=lambda _: _[2])
[[4, 3, 1], [5, 1, 2], [1, 4, 3], [2, 5, 3], [3, 2, 5]]
8、time.sleep(3) #睡眠的意思,暂停3秒执行下方的代码
import time
time.sleep(3)#睡眠的意思,暂停3秒执行下方的代码
start_time = time.time()#获取代码执行到这里的时间
9、python的参数有默认参数、可变参数和关键字参数等
*args是可变参数,args接收的是一个tuple(元组),**kw是关键字参数,kw接收的是一个dict(字典)
10、index_col(0):指定读入数据的第一列为索引,index_col(1):指定数据的第二列为索引
11、dropna.(thresh=n,axis=1)
thresh=n,保留至少有 n 个非 NA 数的行,
dropna 在使用 axis 时,默认 axis=0 表示按行,只要行有NaN就去除此行,
axis=1 表示按列,只要列有NaN就去除此列
12、print(loans_2007.iloc[0])#打印数据loans_2007的第一行
print("该数据共有列",loans_2007.shape[1])#打印出该数据共有多少个列
print("该数据共有行",loans_2007.shape[0])#打印出该数据共有多少个行
print(loans_2007['loan_status'].value_counts())#统计数据中,列loan_status中各种属性值出现的次数
13、loans_2007 = pd.read_csv('LoanStats3a.csv', skiprows=1)#skiprows=1把第数据的二行当做表头的各列名(属性名)
14、orig_columns = loans_2007.columns#展现出所有的列,即数据的特证名
15、pandas里的unique()函数与nunique()函数的区别
相同点:这两个函数都是跟唯一值相关的。
不同点:
unique()函数是以数组形式返回列的所有唯一值。
nunique()函数则是返回所有唯一值的个数。
16、np.zeros(),np.ones()
生成n维零矩阵,n维一矩阵
np.zeros((3,2))
>>>
array[[0,0],
[0,0]
[0,0]]
17、np.linespace()
生成指定间隔的一列数字
18、np.random.randn()
rand函数根据给定维度生成[0,1)之间的数据,包含0,不包含1,返回值为指定维度的array
np.random.rand(4,2)
>>>
array([[ 0.02173903, 0.44376568],
[ 0.25309942, 0.85259262],
[ 0.56465709, 0.95135013],
[ 0.14145746, 0.55389458]])