让我们想象我有这样的文字:
if last_n_input_time <= 7463.0:
else: if last_n_input_time > 7463.0
else: if passwd_input_time > 27560.0
else: if secret_answ_input_time > 7673.5
if first_n_input_time <= 4054.5:
if passwd_input_time <= 5041.0:
else: if passwd_input_time > 5041.0
else: if first_n_input_time > 4054.5
return [[ 1.01167029]]
....
我有一个包含passwd_input_time,first_n_input_time等列的数据框 - 以与文本中的变量相同的方式命名。
问题是如何搜索first_n_input_time的示例,如果我在文本中找到它,则转到另一个符号,看看它是否&gt;或&lt; =然后删除之后的值&gt;或&lt; = symbols并将其添加到我的数据帧的单元格中。
df [&#39; first_n_input_time&#39;] = 4079应该是我的功能的结果。 我理解如何找到这个世界,但我不知道如何以这种方式切割线条,以便我可以得到,例如,&#34; secret_answ_input_time&lt; = 7673.5&#34;然后对它进行操作。
实施例: 我想删除&#34;如果passwd_input_time&lt; = 47635.5&#34;首先。找出&#34; password_input_time&#34;它属于我的数据帧的列名列表(是的,确实如此)。然后我需要移动下一步并检查符号在这里&#34;&lt; =&#34;或&#34;&gt;&#34;。如果&#34;&lt; =&#34;然后我取值47635.5并写入df [&#39; password_input_time_1&#39;]的单元格。如果是&#34;&gt;&#34;然后我将值写入另一列df [&#39; password_input_time_2&#39;]
以下是我试图实现此功能的一些代码,但我有点担心,我不知道如何转到文本中的下一个单词:
def to_dataframe(i, str)
for word in str_.split():
if any(word in s for s in cols_list):
#move to the next word somehow
#I will call it next_word later on for simplicity
col_name = word #save the value to refer to it later
if next_word == "<=":
col_name.append('_1')
#move to the value somehow
#I will call it 'value' later on
df[col_name][i] = value
if next_word == ">"
col_name.append('_2')
#move to the value somehow
#I will call it 'value' later on
df[col_name][i]= value
其中cols_list是我的数据帧的列名列表。