您可以首先阅读csv的方式,然后进行所有的编辑。所以首先...
df = pd.read_csv("data.csv")
然后将应用程序列中的数据放入列表中。然后将列表合并成一个字符串,并在“;”处将其重新拆分除沫器。
col = list(df.application)
col_join = ";".join(col)
col_split = col_join.split(";")
在你有了这个列表之后,你可以循环并删除重复的...
i=0
while i < len(col_split):
j=i+1
while j < len(col_split):
if col_split[i] == col_split[j]:
del(col_split[j])
else:
j += 1
i += 1
现在,您有了一个列表,其中列出了所有可以读入数据框用作列的唯一应用程序条目。
您需要对应用程序
列应用多个热编码,对其他列应用一个热编码。
这是我的解决方案!
>>> import pandas as pd
>>> import numpy as np
>>> df = pd.DataFrame({'number': np.random.randint(0,10,size=5),
'device': np.random.choice(['a','b'],size=5),
'application': ['app2;app3','app1','app2;app4', 'app1;app2', 'app1'],
'district': np.random.choice(['aa', 'bb', 'cc'],size=5)})
>>> df
application device district number
0 app2;app3 b aa 3
1 app1 a cc 7
2 app2;app4 a aa 3
3 app1;app2 b bb 9
4 app1 a cc 4
from sklearn.preprocessing import OneHotEncoder, MultiLabelBinarizer
mlb = MultiLabelBinarizer()
# Assuming appl names are separated by ;
mhv = mlb.fit_transform(df['application'].apply(lambda x: set(x.split(';'))))
df_out = pd.DataFrame(mhv,columns=mlb.classes_)
enc = OneHotEncoder(sparse=False)
ohe_vars = ['device','district'] # specify the list of columns here
ohv = enc.fit_transform(df.loc[:,ohe_vars])
ohe_col_names = ['%s_%s'%(var,cat) for var,cats in zip(ohe_vars, enc.categories_) for cat in cats]
df_out.assign(**dict(zip(ohe_col_names,ohv.T)))
df_out
Scikit-learn (http://scikit-learn.org/) 是一个机器学习领域的开源套件。整个专案起始于 2007年由David Cournapeau所执行的Google Summer of Code 计画。而2010年之后,则由法国国家资讯暨自动化研究院(INRIA, http://www.inria.fr) 继续主导及后续的支持及开发。近几年(2013-2015)则由 IN
这份文件的目的是要提供 Python 之机器学习套件 scikit-learn (http://scikit-learn.org/) 的中文使用说明。一开始的主要目标是详细说明 scikit-learn 套件中的范例程式的使用流程以及相关函式的使用方法。目前使用版本为 scikit-learn version 0.19 以上
问题内容: 哪些是将PDF文件转换为文本的最佳Python模块? 问题答案:
Scikit-learn 套件的安装 目前Scikit-learn同时支持Python 2及 3,安装的方式也非常多种。对于初学者,最建议的方式是直接下载 Anaconda Python (https://www.continuum.io/downloads)。同时支持 Windows / OSX/ Linux 等作业系统。相关数据分析套件如Scipy, Numpy, 及图形绘制库 matplot
本文向大家介绍python机器学习库xgboost的使用,包括了python机器学习库xgboost的使用的使用技巧和注意事项,需要的朋友参考一下 1.数据读取 利用原生xgboost库读取libsvm数据 使用sklearn读取libsvm数据 使用pandas读取完数据后在转化为标准形式 2.模型训练过程 1.未调参基线模型 使用xgboost原生库进行训练 使用XGBClassifier进行
从sklearn加载流行数字数据集。数据集模块,并将其分配给可变数字。 分割数字。将数据分为两组,分别命名为X_train和X_test。还有,分割数字。目标分为两组Y_训练和Y_测试。 提示:使用sklearn中的训练测试分割方法。模型选择;将随机_状态设置为30;并进行分层抽样。使用默认参数,从X_序列集和Y_序列标签构建SVM分类器。将模型命名为svm_clf。 在测试数据集上评估模型的准确