小编Yan*_*tra的帖子

pandas属性错误:找不到属性'Factor'

我正在尝试运行yhat 在他们关于Python中的随机森林的文章中提供的代码,但我不断收到以下错误消息:

File "test_iris_with_rf.py", line 11, in <module>
    df['species'] = pd.Factor(iris.target, iris.target_names)
AttributeError: 'module' object has no attribute 'Factor'
Run Code Online (Sandbox Code Playgroud)

码:

from sklearn.datasets import load_iris
from sklearn.ensemble import RandomForestClassifier
import pandas as pd
import numpy as np

iris = load_iris()
df = pd.DataFrame(iris.data, columns=iris.feature_names)
print df
print iris.target_names
df['is_train'] = np.random.uniform(0, 1, len(df)) <= .75

df['species'] = pd.Factor(iris.target, iris.target_names)

df.head()
Run Code Online (Sandbox Code Playgroud)

python python-2.7 pandas

17
推荐指数
2
解决办法
8686
查看次数

使用随机林分类文本文档

我有一组4k文本文档.他们属于10个不同的类别.我试图看看随机森林方法如何进行分类.问题是我的特征提取类提取了200k特征.(单词,双字母组合,搭配等的组合)这是高度稀疏的数据,sklearn中的随机森林实现不适用于稀疏数据输入.

问:我有什么选择?减少功能数量?怎么样 ?问:是否存在使用稀疏数组的随机林的实现.

我的相关代码如下:

import logging
import numpy as np
from optparse import OptionParser
import sys
from time import time
#import pylab as pl

from sklearn.datasets import load_files
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.ensemble import RandomForestClassifier
from special_analyzer import *


data_train  =  load_files(RAW_DATA_SRC_TR)
data_test   =  load_files(RAW_DATA_SRC_TS)
# split a training set and a test set
y_train, y_test = data_train.target, data_test.target

vectorizer = CountVectorizer( analyzer=SpecialAnalyzer()) # SpecialAnalyzer is my class extracting features from text
X_train = vectorizer.fit_transform(data_train.data)



rf = RandomForestClassifier(max_depth=10,max_features=10)
rf.fit(X_train,y_train)
Run Code Online (Sandbox Code Playgroud)

python sparse-matrix random-forest scikit-learn

5
推荐指数
2
解决办法
6784
查看次数

KL(Kullback-Leibler)距离与Python中的直方图平滑

我有两个(不同长度)数字列表.使用Python,我想用10个箱子来计算直方图.然后我想用标准内核(高斯内核,平均值= 0,sigma = 1)平滑这两个直方图.然后我想计算这两个平滑直方图之间的KL距离.我找到了一些关于直方图计算的代码,但不确定如何应用标准内核进行平滑,然后如何计算KL距离.请帮忙.

python gaussian histogram smoothing

2
推荐指数
1
解决办法
2161
查看次数