【发布时间】:2021-04-25 16:22:29
【问题描述】:
我有以下问题: 我有一个具有多个 ID 的数组,并且我在 df 中有一个列,我想用它来匹配这些 ID。 如果相等,则该行应写入新的 DF。
这是我的数组,叫做 manhatten_ids
array([ 4, 12, 13, 24, 41, 42, 43, 45, 48, 50, 68, 74, 75,
79, 87, 88, 90, 100, 103, 104, 105, 107, 113, 114, 116, 120,
125, 127, 128, 137, 140, 141, 142, 143, 144, 148, 151, 152, 153,
158, 161, 162, 163, 164, 166, 170, 186, 194, 202, 209, 211, 224,
229, 230, 231, 232, 233, 234, 236, 237, 238, 239, 243, 244, 246,
249, 261, 262, 263], dtype=int64)
这是我的框架,名为 df_trips:
因此,如果一个 DOLocation ID 与一个数组值匹配,它应该将包含所有列的整行写入一个新的 df,称为 newdf。
这个其实不行:
newdf=df.loc[df_trips['DOLocationID'].isin(manhatten_ids)]
有人有想法吗?
【问题讨论】:
-
newdf['column name']=df.loc[df['column'].isin(array),'column name']? -
我想将 df 列与数组值进行比较.. 但在它应该将包含所有特征的整行保存到新框架中
-
请在MRE - Minimal, Reproducible, Example 中包含示例数据和预期输出。
-
好的,它现在在
-
df应该是df_trips不是吗?new_df = df_trips.loc[df_trips['DOLocationID'].isin(manhattan_ids)]
标签: python pandas data-science jupyter