Python使用tips

1、

def pick_top_n(preds, vocab_size, top_n=5):  #选取一个list数据中的前五
    p = np.squeeze(preds)
    # 将除了top_n个预测值的位置都置为0
    p[np.argsort(p)[:-top_n]] = 0
    # 归一化概率
    p = p / np.sum(p)
    # 随机选取一个字符
    c = np.random.choice(vocab_size, 1, p=p)[0]
    return c

2、

xx, yy = np.meshgrid(np.arange(x_min, x_max, 0.02),  #两个坐标轴上的点在平面上画格
                     np.arange(y_min, y_max, 0.02))

3、

np.r_是按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等,类似于pandas中的concat()。

np.c_是按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等,类似于pandas中的merge()。

4、

numpy的ravel() 和 flatten()函数

首先声明两者所要实现的功能是一致的(将多维数组降位一维)。这点从两个单词的意也可以看出来,ravel(散开,解开),flatten(变平)。两者的区别在于返回拷贝(copy)还是返回视图(view),numpy.flatten()返回一份拷贝,对拷贝所做的修改不会影响(reflects)原始矩阵,而numpy.ravel()返回的是视图(view,也颇有几分C/C++引用reference的意味),会影响(reflects)原始矩阵。

5、

Python可视化库matplotlib.pyplot里contour与contourf的区别

contour和contourf都是画三维等高线图的,不同点在于contourf会对等高线间的区域进行填充,无论contour还是contourf,都是绘制三维图,其中前两个参数x和y为两个等长一维数组,第三个参数z为二维数组(表示平面点xi,yi映射的函数值)。正是由于contourf可以填充等高线之间的空隙颜色,呈现出区域的分划状,所以很多分类机器学习模型的可视化常会借助其展现。

6、

python中plt.cm.Paired

plt.cm中cm全称表示colormap,paired表示两个两个相近色彩输出,比如浅蓝、深蓝;浅红、深红;浅绿,深绿这种。

7、append和extend的区别

>>> A = ['q', 'w', 'e', 'r']
>>> A.extend(['t', 'y'])
>>> A
['q', 'w', 'e', 'r', 't', 'y']
>>>len(A)

>>> B = ['q', 'w', 'e', 'r']
>>> B.append(['t', 'y'])
>>> B
['q', 'w', 'e', 'r', ['t', 'y']]
>>>len(B)

8、np.dot(a,b)

如果是一维数组,返回的是两个数组的点积(dot product)

如果是二维数组,返回的是矩阵相乘之后的结果

9.np.where

np.where(condition, x, y),满足条件(condition),输出x,不满足输出y。

10、对于数组a=[0,4,5,7,0,0,0],定位所有的0,并删除所有的0,

new_list = [i for i in old_list if i > 0]  #这样获取到所有大于0的数值

del a[:2]  删除a[0] a[1] 2 个数值

import numpy as np

a = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9]) i

ndex = [2, 3, 6]

new_a = np.delete(a, index)

print(new_a)

#Prints `[1, 2, 5, 6, 8, 9]`

11、list操作:https://blog.csdn.net/wudiyi815/article/details/7775549

12、集合操作set:https://www.cnblogs.com/whatisfantasy/p/5956775.html

13、dict1.update(dict2) 两个字典合并

14、TF-IDF 计算 https://www.zhihu.com/search?type=content&q=tf%20idf%20%E5%8E%9F%E7%90%86

15、pandas:一列分解成多列 series.str.split(',',expand=True);pyspark 一列分解成多列 https://blog.csdn.net/weixin_40161254/article/details/95321858

16、pyspark 使用tips记录 https://www.cnblogs.com/liaowuhen1314/p/12792202.html

17、如何使用python对列表、字典、集合进行过滤筛选? https://www.jianshu.com/p/b0ed946aec26

18、

1)df_majority_downsampled = resample(df_majority,replace=False, n_samples=len(df_minority),random_state=None)

df_downsampled = pd.concat([df_majority_downsampled, df_minority])

2)df_downsampled = df_downsampled.sample(frac=1) #Shuffle the data
df_downsampled = df_downsampled.reset_index() #Reset the index
df_downsampled = df_downsampled.drop(columns=['index']) # Drop original index col

3)NON_LBL = [c for c in df.columns if c != 'authentic']
X = df[NON_LBL]
y = df['authentic']

# Here we are imputing 300 positives as negative

4)hidden_size = 300
y.loc[np.random.choice(y[y == 1].index,replace = False,size = hidden_size)] = 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值