我創建了一個用于清理資料框的簡單函式,但它并沒有創建它。為什么?
當我運行該函式時,我想要的資料框是 df_cleaned。
def cleaning_data(data_set):
df_cleaned = []
for index in data_set.columns[4:]:
data_set['new'] = 1
df_clean_all = pd.DataFrame(data_set['new'])
df_clean_all[index] = data_set[index][data_set[index].between(data_set[index].quantile(0.05),
data_set[index].quantile(0.95))]
df_clean_all = df_clean_all.drop('new', 1)
df_clean_all = df_clean_all.fillna(df_clean_all.mean())
df_cleaned.append(df_clean_all)
df_cleaned = pd.concat(df_cleaned, axis = 1)
cleaning_data(df_data)
uj5u.com熱心網友回復:
這是回傳結果的問題嗎? return df_cleaned
import numpy as np
import pandas as pd
def cleaning_data(data_set):
df_cleaned = []
for index in data_set.columns[4:]:
data_set['new'] = 1
df_clean_all = pd.DataFrame(data_set['new'])
df_clean_all[index] = data_set[index][data_set[index].between(data_set[index].quantile(0.05),
data_set[index].quantile(0.95))]
df_clean_all = df_clean_all.drop('new', 1)
df_clean_all = df_clean_all.fillna(df_clean_all.mean())
df_cleaned.append(df_clean_all)
return pd.concat(df_cleaned, axis = 1)
random_df = pd.DataFrame(
np.random.randint(0, 1000, size=(10, 6)), columns=list('ABCDEF')
)
print(cleaning_data(random_df))
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/327769.html
