[英]iterrows() loop is only reading last value and only modifying first row
我有一个 dataframe test
。 我的目标是在t1
列中搜索特定字符串,如果它与特定字符串完全匹配,则将该字符串放在名为t1_selected
的下一列中。 唯一的问题是,我无法在整个 dataframe 上将iterrows()
传递给 go,并在相应的行中报告结果。
for index, row in test.iterrows():
if any(['ABCD_T1w_MPR_vNav_passive' in row['t1']]):
#x = ast.literal_eval(row['t1'])
test.loc[i, 't1_selected'] = str(['ABCD_T1w_MPR_vNav_passive'])
我只是想让ABCD_T1w_MPR_vNav_passive
位于t1_selected
下的第 4 行,而所有其他行都not found
。 t1_selected
中的第一个条目来自t1
下的最后一行,我没有包括在屏幕截图中,因为 dataframe 有超过 200 行。
我试图将一个空列表初始化为 append output
import ast
x = ast.literal_eval(row['t1'])
看看我是否可以将x
放在那里,但发生了同样的问题。
for index, row in test.iterrows():
if any(['ABCD_T1w_MPR_vNav_passive' in row['t1']]):
#x = ast.literal_eval(row['t1'])
test.loc[index, 't1_selected'] = str(['ABCD_T1w_MPR_vNav_passive'])
其中index
是其写入的行。 有了i
,它没有改变
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.