У меня есть следующие данные:
sv_m1 rev ioip are
0 15.31 40 NJ
0 64.9 0 CX
0 18.36 20 FP
0 62.85 0 CX
0 10.31 20 NJ
0 12.84 10 CX
0 69.95 0 FP
0 32.81 20 BS
У меня есть вышеуказанные данные в формате CSV, из которого я читаю по одному столбцу за раз и выполняю некоторую обработку.Затем я хочу написать в CSV, каждый столбец за один раз.Так что сначала будет написано sv_m1, затем rev и ioip.Так как переменная является категориальной, она будет преобразована в пустышки, и 4 столбца будут записаны в CSV за один раз.Как можно понять, количество столбцов во время каждой записи может варьироваться в зависимости от того, является ли она числовой или категориальной переменной.
Ниже приведен мой код:
for column in cols_list:
df_column = pd.read_csv('df_sample.csv', usecols=[column])
#### Data processing##########
if (attribute_dict[column] == 'CAT'): # attribute_dict contains mapping of column name and type
df_target = pd.get_dummies(df_column[column], dummy_na=True, prefix=column)
for target_column in list(df_target.columns):
df_final[target_column] = df_target[[target_column]]
else (attribute_dict[column] == 'NUM'):
df_target = df_column
df_target.fillna(value=0,inplace=True)
df_final[column] = df_target
# Write into csv for each column.
with open('df_final.csv', 'w', newline='') as csvfile:
writer = csv.writer(csvfile, delimiter=',')
/* Not sure what to do here */
Может кто-нибудь, пожалуйста, направьте меняпо этому поводу?
Большое спасибо!