运行 来自两列数据帧的单列系列上的 CountVectorizer?
Run CountVectorizer on single column Series from two-column dataframe?
如何将具有多列的 pandas 数据帧中的单列转换为 CountVectorizer 的系列?
我有一个包含 2 列 x 9372 条记录(行)的 Pandas 数据框:
- 第一列称为
twodig
,是一个整数
- 第二列称为
descrp
,是一个 varchar
- image of dataframe
删除停用词和特殊字符后,我只想在 descrp
列上使用 CountVectorizer,但仍保留 twodig
.
import pandas
from sklearn.feature_extraction.text import CountVectorizer
vectorizer = CountVectorizer()
bowmatrix = vectorizer.fit_transform(df)
但是 运行ning CountVectorizer 需要将数据帧转换为 pandas 系列,然后 运行 使用 CountVectorizer。
corpus = pd.Series(df)
但是当我运行这个脚本的时候,产生的错误:Wrong number of items passed 2, placement implies 9372
您只能像这样从 DataFrame 获取该列:df["descrp"]
因此您的代码将是:
import pandas
from sklearn.feature_extraction.text import CountVectorizer
vectorizer = CountVectorizer()
bowmatrix = vectorizer.fit_transform(df["descrp"])
你可以做这样的事情,但之后的工作不是最佳的。
import pandas
from sklearn.feature_extraction.text import CountVectorizer
vectorizer = CountVectorizer()
df["bowmatrix"] = vectorizer.fit_transform(df["descrp"])
如何将具有多列的 pandas 数据帧中的单列转换为 CountVectorizer 的系列?
我有一个包含 2 列 x 9372 条记录(行)的 Pandas 数据框:
- 第一列称为
twodig
,是一个整数 - 第二列称为
descrp
,是一个 varchar - image of dataframe
删除停用词和特殊字符后,我只想在 descrp
列上使用 CountVectorizer,但仍保留 twodig
.
import pandas
from sklearn.feature_extraction.text import CountVectorizer
vectorizer = CountVectorizer()
bowmatrix = vectorizer.fit_transform(df)
但是 运行ning CountVectorizer 需要将数据帧转换为 pandas 系列,然后 运行 使用 CountVectorizer。
corpus = pd.Series(df)
但是当我运行这个脚本的时候,产生的错误:Wrong number of items passed 2, placement implies 9372
您只能像这样从 DataFrame 获取该列:df["descrp"]
因此您的代码将是:
import pandas
from sklearn.feature_extraction.text import CountVectorizer
vectorizer = CountVectorizer()
bowmatrix = vectorizer.fit_transform(df["descrp"])
你可以做这样的事情,但之后的工作不是最佳的。
import pandas
from sklearn.feature_extraction.text import CountVectorizer
vectorizer = CountVectorizer()
df["bowmatrix"] = vectorizer.fit_transform(df["descrp"])