У меня есть датафрейм с несколькими столбцами. Одна из них называется 'log_text'.
Я хочу найти пары строк, которые имеют совпадающие строки в этом столбце.
Например, если 'log_text'
имеет эти строки
Device remove ID#xxx
Device remove ID#yyy
Device remove ID#zzz
Device arrive ID#xxx
Device arrive ID#yyy
Device arrive ID#zzz
Цель:Я хотел бы получить строки, содержащие 'Device remove ID#xxx'
и 'Device arrive ID#xxx'
и иметь возможность делать вещи с другими столбцами, а затем повторить это для строк, содержащих 'Device remove ID#yyy'
и 'Device arrive ID#yyy'
и т. Д.
Что япытался использовать iterrows()
, найти ID#
текущей строки, удалить эту строку из таблицы и найти первую строку, содержащую соответствующую строку ID #.
for index, row in temp_df.iterrows():
log_string = row['log_text']
id_text = log_string.partition("ID#")[2]
temp_df.drop(row)
match = temp_df[temp_df['log_text'].str.contains(id_text)]
# Somehow stash the 2 rows together somewhere?
# like stash[index,1] = row; stash[index,2] = match;
temp_df.drop(match)