您好,我想要实现的是在我的csv文件中找到该列(转换为数据帧),其中包含单词' outbound'并隔离该列以及它旁边的两列。到目前为止,我已经尝试了以下代码片段无济于事。
mask = np.column_stack([NB_2c17_newburden[col].str.contains(r"outbound", na=False) for col in NB_2c17_newburden])
以及使用搜索
for line in NB_2c17_newburden:
if re.search('outbound', line):
print (line)
我只是使用打印线来查看它是否可行。任何帮助将不胜感激。
在R中,它已通过以下代码实现:
i <- grep('outbound',NB_2c17_newburden)
i <- i:(i+2)
但我不知道如何将其转换为python
答案 0 :(得分:1)
df=pd.DataFrame({"col1":["one","two","three"],"col2":["four","five","six"],"col3":["seven","outbound","nine"],"col4":["ten","eleven","twelve"]})
for i in range(len(df.columns)):
if pd.Series.any(df.iloc[:,i].str.contains(pat="outbound")):
new_list=pd.DataFrame({df.columns[i-1]:df.iloc[:,i-1],df.columns[i]:df.iloc[:,i],df.columns[i+1]:df.iloc[:,i+1]})
print(new_list)
col2 col3 col4
0 four seven ten
1 five outbound eleven
2 six nine twelve