首页 > 解决方案 > 在 CSV 中保留或不保留标题以进行训练

问题描述

是否总是需要从导入的 CSV 中删除标题以进行培训?

这就是我所拥有的...

raw_data_df = [pd.read_csv(
            file, header=None, skiprows=[0], low_memory=False) for file in input_files]
train_data_df = pd.concat(raw_data_df)

我们在跳过标题时使用header=Noneand skiprows=[0],并将其传递给 LogisticRegression().fit()

还是保留标题更好?

标签: python-3.xpandascsvscikit-learnlogistic-regression

解决方案


如果所有文件中的标题都相同,那么您可以保留它们。或者你只保留第一个文件的标题。

具有标题的好处是,当您运行逻辑回归时,您可以轻松找出哪些系数属于哪些列名称(以及哪些系数最重要)。

例如:

import numpy as np
import pandas as pd
from sklearn.linear_model import LogisticRegression

lr = LogisticRegression()
lr.fit(X_train, y_train)

df_lr_coef = pd.DataFrame({
    'features': lr.classes_, 
    'coefficients': lr.coef_,
    'coef_abs': np.abs(lr.coef_),
}).sort_values(by='coef_abs', ascending=False)

推荐阅读