如何解析文本到dataframe?

时间:2017-07-18 15:33:13

标签: python string pandas split

让我们想象我有这样的文字:

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是我的数据帧的列名列表。

0 个答案:

没有答案