在 CSV 中保留或不保留 header 以进行训练
Keeping or not keeping header in the CSV for training
是否总是需要从导入的 CSV 中删除 header 进行训练?
这就是我的...
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时使用了header=None
和skiprows=[0]
,我们将它传递给 LogisticRegression().fit()
还是保留 header 更好?
如果所有文件中的header都相等,那么你可以保留它们。或者你只保留第一个文件的header。
header 的优点是,当您 运行 逻辑回归时,您可以轻松找出哪些系数属于哪些列名称(以及哪些系数最重要)。
例如:
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)
是否总是需要从导入的 CSV 中删除 header 进行训练?
这就是我的...
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时使用了header=None
和skiprows=[0]
,我们将它传递给 LogisticRegression().fit()
还是保留 header 更好?
如果所有文件中的header都相等,那么你可以保留它们。或者你只保留第一个文件的header。
header 的优点是,当您 运行 逻辑回归时,您可以轻松找出哪些系数属于哪些列名称(以及哪些系数最重要)。
例如:
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)