![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python数据处理
Jennie_J
这个作者很懒,什么都没留下…
展开
-
日常一些常用模块汇集【读取文件名】【json读取与保存】
def get_files(dir): """ 获取所有文件名 :param dir: 目录 :return: 目录下所有去重文件名的列表 """ file_list=[] for roots, dirs, files in os.walk(dir): for file in files: file_list.append(file.split('.')[0]) return list(set(file_原创 2021-09-29 15:03:27 · 280 阅读 · 0 评论 -
两两组合工具之itertools
最近做项目的 时候发现一个好用的工具,用于实现自动两两组合:itertools先mark一下,有空来补全具体功能原创 2021-01-08 15:37:02 · 366 阅读 · 0 评论 -
Python NumPy中的diag函数
np.diag(array) 这个函数比较有意思array是一个1维数组时,结果形成一个以一维数组为对角线元素的矩阵array是一个二维矩阵时,结果输出矩阵的对角线元素一般在u,s,vt = svd(data,k) 中比较常用,svd计算出的s是对角线元素的1维数组用于将s还原为对角线矩阵,即对角线上为非零值,其余位置数值均为0u,s,vt = svds(users_items_piv...原创 2020-02-24 23:52:34 · 2654 阅读 · 0 评论 -
pandas.df.pivot()
df.pivot(index=None, columns = None, values=None)原来的interactions_train_df.head()#Creating a sparse pivot table with users in rows and items in columnsusers_items_pivot_matrix_df = interactions_tr...原创 2020-02-24 18:12:09 · 1576 阅读 · 0 评论 -
append()
item_profiles_list = [get_item_profile(x) for x in ids]与 [ ] + append()+ for循环 等价例如:def get_item_profiles(ids): item_profiles_list = [get_item_profile(x) for x in ids] item_profiles = scip...原创 2020-02-21 20:20:29 · 516 阅读 · 0 评论 -
python sorted(),zip(), flatten()
sorted() 函数对所有可迭代的对象进行排序操作https://www.runoob.com/python3/python3-func-sorted.htmlsort 与 sorted 区别:sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新...原创 2020-02-21 18:38:49 · 517 阅读 · 0 评论 -
scipy.sparse.vstack() 和 np.sum()
1, scipy.sparse.vstack() 表示按行拼接(行数增加),列数必须相同2, np.sum(s_multiplyed,axis=0) 每一列中所有行求和,结果行数为1,列数不变3, 例子stopwords_list = stopwords.words('english')+stopwords.words('portuguese')vectorizer = TfidfVe...原创 2020-02-21 16:39:03 · 1643 阅读 · 0 评论 -
sklearn.metrics.pairwise 中 cosine_similarity
cosine_similarities.argsort()按相似度大小升序给出对应相似度所在位置,[-topn:]取倒数几个位置,即取相似度最大N个值所在indexsklearn.metrics.pairwise import cosine_similaritya1 = np.arange(5).reshape(1,5)a2 = np.arange(20).reshape(4,5)pr...原创 2020-02-21 16:25:18 · 4320 阅读 · 0 评论 -
numpy中matmul()、multiply()、dot()的区别
参考: https://www.jianshu.com/p/42b0b6ffcf971,numpy.matmul :矩阵乘法(matrix product)2,numpy.multiply:数量积(element-wise multiply)对象可以是array也可是matrix3,np.dot :可以视对象发生变化,情况较复杂(1)如果a和b都是一维的,那么结果就是普通的內积(...原创 2020-02-21 15:50:15 · 1509 阅读 · 0 评论 -
python代码规范
google开源项目风格指南—python原创 2019-09-03 16:35:02 · 100 阅读 · 0 评论 -
关于onehot和哑变量(dummy)
这篇文章讲述比较清楚,哪些模型何时用one-hot,何时用dummy搬砖:回归模型虚拟变量个数的选择:在模型中引入多个虚拟变量时,虚拟变量的个数应按下列原则确定:1.回归模型有截距:一般的,若该特征下n个属性均互斥(如,男/女;儿童/青年/中年/老年),在生成虚拟变量时,应该生成 n-1个虚变量,这样可以避免产生多重共线性。这种模式即为one-hot编码回归模型无截距项:有n个特征,...原创 2019-09-05 18:08:43 · 1307 阅读 · 0 评论 -
sns.countplot()函数
sns.countplot()函数以bar的形式展示每个类别的数量例如:plt.figure(figsize=(15,5)) #图的宽和长,单位为inchplt.subplot(121) #subplot(行,列,第几个)**sns.countplot('User_ID',data=data,alpha=0.8) #统计data中‘User_ID’这个特征每种类别的数量**...原创 2019-04-02 22:28:11 · 28446 阅读 · 0 评论 -
不平衡样本的处理方法---金融欺诈案例
对于二分类问题,理想的样本应该是50:50但现实中某些场景就是非平衡数据,如癌症检测(癌症患者在人类总数中总是占非常小的比例),金融欺诈(一般来说大家都是守法尊则的良好公民,欺诈一般占小比例)对于不平衡问题,一般将占比小的分类设为1,如欺诈和患癌症不平衡样本的处理方式:(1)样本采样方面:欠采样(减法)过采样(加法)SMOTE(类似与过采样,区别在于采用算法生成新的样本(一般是占比小...原创 2019-03-13 22:25:39 · 856 阅读 · 0 评论 -
python f.write 中文报错
with open('train_ft.txt', 'w') as f: for sen in X_train: f.write(sen+'\n')报错:gbk不识别字符‘u/2022’解决办法python3.6.5with open('train_ft.txt', 'w',encoding='utf-8') as f: for sen in X_trai...原创 2019-08-16 10:23:34 · 958 阅读 · 0 评论 -
关于评分卡和流失预警
评分卡流程流失预警原创 2019-08-20 17:23:09 · 359 阅读 · 0 评论 -
numpy中的ravel()
将多维数组转换为一维数组print(Y_underSampling_trian)输出带有index的DataFrame格式 Class6870 182147 0...[688 rows x 1 columns]对这个series的values进行ravel()print(Y_underSampling_trian.values.rave...原创 2019-03-15 17:03:52 · 51147 阅读 · 6 评论 -
numpy数组拼接np.concatenate()和np.append()
转自:https://blog.csdn.net/qq_38150441/article/details/80488800条理清晰,通俗易懂转来以便自我查阅数组拼接方法一思路:先把array数组转变成列表list, 利用列表的拼接函数append(),extend()处理,再将列表转换成数组a.append(b)a.extend(b)示例1:import numpy as n...转载 2019-03-14 10:54:53 · 4504 阅读 · 0 评论 -
python中count()、values_counts()、size()函数
count()函数之详解 https://blog.csdn.net/JNingWei/article/details/78308815转载了count()函数,以便自己以后更好的查阅。1,count()(1) string 中 某字符 的次数(2) list中某元素出现的次数2,values_count()对pandas的DataFrame中每个Series里面的每个值进行计数并...转载 2019-03-14 10:19:03 · 2745 阅读 · 0 评论 -
np.random.choice
import numpy as npB=np.random.choice(a, size=None, replace=True, P=None)a 可以是一个数字,也可以是1-D arraysize表示从a中随机选择几个replace 表示是否放回,True表示有放回(默认值),False表示无放回P表示a中每个元素被选择概率,默认下是一致概率return: 1-D array参考...原创 2019-03-14 10:04:04 · 136 阅读 · 0 评论 -
pandas中iloc, loc和ix的区别
data=pd.DataFrame({'A':[3,4,5],'B':[6,7,8],'C':[9,10,11]},index=['a','b','c']).iloc()通过指定行数和列数进行切块data.iloc[1,2] 表示第1行第2列的10data.iloc[0:1,1:2] 表示范围切块第0行到第1行的第1列到第2列的values.lic( ) 通过行标签和列标签切块da...原创 2019-03-13 22:02:21 · 408 阅读 · 0 评论 -
reshape(-1,1)
reshape(行数,列数)常用来更改数据的行列数目一般可用于numpy的array和ndarray, pandas的dataframe和series(series需要先用series.values把对象转化成ndarray结构)那么问题来了reshape(-1,1)是什么意思呢?难道有-1行?这里-1是指未设定行数,程序随机分配,所以这里-1表示任一正整数所以reshape(-1,1)表...原创 2019-03-13 21:42:55 · 22788 阅读 · 3 评论 -
AttributeError: 'Series' object has no attribute 'reshape'
data['normAmount']=StandardScaler().fit_transform(data['Amount'].reshape(-1,1))报错:AttributeError: ‘Series’ object has no attribute ‘reshape’原因:data是dataFrame数据结构,data[‘Amount’]取dataframe的一个column,输...原创 2019-03-13 21:27:12 · 13429 阅读 · 2 评论 -
datsframe缺失值处理
1, df.isnull().sum()输出dataFrame中每一列缺失值数量2, df.dropna()默认删除含有缺失值的行,即只要该行有缺失值就把这一行删除,返回删除后的数据df.dropna(how=‘all’)只删除一整行都为空值的行,不全为空值的行不会被删除...原创 2019-02-25 16:36:03 · 309 阅读 · 0 评论 -
python enumerate()
遍历对象(列表、元组等),并输出元素及其下标:语法:enumerate(sequence, [start=0])sequence: 对象start:下标起始位置例子:seasons = ['Spring', 'Summer', 'Fall', 'Winter']list(enumerate(seasons))[(0, ‘Spring’), (1, ‘Summer’), (2, ...原创 2019-03-16 10:43:26 · 135 阅读 · 0 评论 -
sklearn KFold()
最近实践过程中遇到需要KFold()记录一下,以便日后查阅KFold()在sklearn中属于model_slection模块from sklearn.model_selection import KFoldKFold(n_splits=’warn’, shuffle=False, random_state=None)参数:n_splits 表示划分为几块(至少是2)shuffle...原创 2019-03-18 11:36:55 · 44471 阅读 · 8 评论 -
python 中__name__ == "__main__"
1、这段代码的功能一个python的文件有两种使用的方法,第一是直接作为脚本执行,第二是import到其他的python脚本中被调用(模块重用)执行。if name == ‘main’: 的作用就是控制这两种情况执行代码的过程,在if name == ‘main’: 下的代码只有在第一种情况下(即文件作为脚本直接执行)才会被执行,而import到其他脚本中是不会被执行的讲述很清楚...转载 2019-05-13 22:19:04 · 77 阅读 · 0 评论 -
sns.lmplot()
https://blog.csdn.net/dahunihao/article/details/77833922http://seaborn.pydata.org/generated/seaborn.lmplot.htmlsns.lmplot('User_ID','Purchase',data=df_Apurchase_by_UID_Gender,fit_reg=False,hue='Gend...原创 2019-04-02 23:32:32 · 6675 阅读 · 0 评论 -
df.groupby()
参考https://blog.csdn.net/m0_37870649/article/details/80979809df_Apurchase_by_UID_Gender=data.groupby(['User_ID','Gender']).agg({'Purchase':np.mean}).reset_index()print(df_Apurchase_by_UID_Gender.head...原创 2019-04-02 23:06:31 · 12876 阅读 · 1 评论 -
plt.figure(figsize=(a,b))和plt.subplot()函数
plt.figure(figsize=(6,8))表示figure 的大小为宽、长(单位为inch)figsize : (float, float), optional, default: Nonewidth, height in inches. If not provided, defaults torcParams[“figure.figsize”] = [6.4, 4.8].plt...原创 2019-04-02 22:11:50 · 89761 阅读 · 1 评论 -
pandas 唯一值unique( )和nunique()
以Kaggle上black Friday数据为例unique()函数输出每个特征的唯一值for col in data.columns: print('{} unique element : {}'.format(col,data[col].unique()))输出User_ID unique element : [1000001 1000002 1000003 ... 1004...原创 2019-04-01 22:56:39 · 6095 阅读 · 0 评论 -
机器学习从蛋白序列预测蛋白分类(一)
1,背景与目标:随着测序技术的快速发展,GenBank等数据库中存储了大量基因、蛋白序列信息,其中大部分尚无标注,如何充分利用GenBank等数据库现有数据资源,挖掘数据信息,为精准医疗、药物研发等生物大健康领域提供有价值的信息具有重要意义。目前这方面已有BLAST等生物信息技术可用,这里希望尝试机器学习技术在这方面的应用。2,数据清洗与处理数据来源于Kaggle竞赛(https://www...原创 2019-02-28 18:03:43 · 6076 阅读 · 0 评论