apply()
train['Has_Cabin'] = train["Cabin"].apply(lambda x: 0 if type(x) == float else 1)
傳入一個函數,應用于一個列。
重載[]
dataset.loc[dataset['FamilySize'] == 1, 'IsAlone'] = 1
將將dataset的FamilySize字段等于1的列的IsAlone列的值設為1。
numeric_features = features.loc[:,['LotFrontage', 'LotArea', 'GrLivArea', 'TotalSF']]
重載&
dataset.loc[(dataset['Fare'] > 7.91) & (dataset['Fare'] <= 14.454), 'Fare'] = 1
將7.91<Fare<=14.454的列的Fare列設置為1。
isnull()
age_null_count = dataset['Age'].isnull().sum()
找出缺失項。
fillna()
dataset['Embarked'] = dataset['Embarked'].fillna('S')
將缺失項填充為'S'。
replace()
dataset['Title'] = dataset['Title'].replace('Mlle', 'Miss')
替換給定值。
corr()
train.astype(float).corr()
求相關系數矩陣。
concat()
NAs = pd.concat([train.isnull().sum(), test.isnull().sum()], axis=1, keys=['Train', 'Test'])
拼接兩列.
factorize()
將字符數據字符化,一個字符對應一個數字。
dic = {"X": ["a", "a", "b", "c"], "Y": [1, 2, 3, 4]}
df = pd.DataFrame(dic)
pd.factorize(df['X'])[0]
Output:
array([0, 0, 1, 2], dtype=int64)