【发布时间】:2021-06-10 21:13:29
【问题描述】:
我有一个关于世界上 airbnb 的庞大数据集。 该数据集包含 5500 个城市。 我只想在“伦敦”、“巴黎”和“柏林”工作 所以从我原来的数据集名称'df' 我想创建一个新的数据集“filtered_df”,其中只有来自这 3 个城市的所有数据。 我有一个变量“城市”,所以我在下面尝试了这个,但没有按我的意愿工作。
df_berlin = df['City']== 'Berlin'
df_paris = df['City']== 'Paris'
df_london = df['City']== 'London'
filtered_df = [df_berlin + df_paris + df_london]
【问题讨论】:
-
这并不奇怪。它只是将
False分配给所有三个过滤器变量并将它们相加得到[0]。你的数据集是什么格式的,你用什么框架来处理它?您可以使用内置的子集方法。 -
也许你可以试试
df_paris = df["Paris"] -
我的数据集是 CSV 格式,我正在使用 python 研究 jupiter。使用 df_paris = df["Paris"] 时出现关键错误,因为巴黎、伦敦和柏林位于“城市”列中
-
我也是刚开始接触 Pandas,所以我不确定它是否正确,但是
df[df.City=='Berlin']这样做了吗? -
@pandawan 运行
df.head()并在问题中添加输出。它将提供有关您的数据集的一些见解。我假设您已使用read_csv()将 csv 格式数据集转换为pandas DataFrame。
标签: python