Я хочу создать новый столбец в кадре данных, взяв соотношение двух существующих столбцов.Следующий код работает, но он не сохраняет столбец df [price_per_sqft].
df['price_per_sqft'] = (df['SalePrice']/df['LotArea'])
Ваш код выглядит нормально.Это будет работать в python3, просто выдает предупреждение, как показано ниже:
A value is trying to be set on a copy of a slice from a DataFrame. Try using .loc[row_indexer,col_indexer] = value instead See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy #!/home/ubuntu/python_env/.env_quantz_tools/bin/python3.5
Просто снимите скобки с него, и вы готовы идти.
df['price_per_sqft'] = df['SalePrice']/df['LotArea']
Это должно сделать:
или вы можете использовать pd.assign
pd.assign
df.assign(price_per_sqft = df.SalePrice/df.LotArea)