我正在尝试将字符串和列表都传递给pandas .isin()方法。这是我的下面的代码
<nuxt-link
v-for="job in jobs"
:key="job.id"
:to="{ name: 'job', params: { id: job.id } }"
>
<JobPost :details="job.post" />
</nuxt-link>
这里的问题是.isin([])对于字符串的每次迭代都很好,但是当我到达了total_months [-1]时,它是一个列表,您不能将列表传递到.isin([])句法。香港专业教育学院试图这样做,但不能删除双引号,因为我的理解是字符串是不可变的:
overall_months = ['APR', 'JUL', 'NOV', 'MAR', 'FEB', 'AUG', 'SEP', 'OCT', 'JAN', 'DEC', 'MAY',
'JUN', ['APR', 'JUL', 'NOV', 'MAR', 'FEB', 'AUG', 'SEP', 'OCT', 'JAN', 'DEC', 'MAY', 'JUN']]
for mon in overall_months:
temp_df = df.month.isin([[mon]]))
这将产生:“'APR','JUL','NOV','MAR','FEB','AUG','SEP','OCT','JAN','DEC','MAY' ,“ JUN”” 如果是,则可以将其传递给我的语法:“ APR”,“ JUL”,“ NOV”,“ MAR”,“ FEB”,“ AUG”,“ SEP”,“ OCT”,“ JAN”,“ DEC” ,“ MAY”,“ JUN”
是否有以最佳方式完成此任务的帮助?
答案 0 :(得分:1)
您可以检查元素是否为带有isinstance
的列表:
for mon in overall_months:
if not isinstance(mon, list): mon = [mon]
tmp_df = df.month.isin(mon)