Python 基本函数应用

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]])

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值