基于条件熊猫的数据帧生成器

时间:2019-06-18 18:11:34

标签: python function dataframe

我已经手动创建了一堆数据帧,以便稍后根据我拥有的二元组列表重新连接在一起(我这样做的原因不在此问题的范围之内)。问题是,我想将此代码设置为每天或每周运行,如果刷新后数据发生更改,则我创建的手动创建的数据框将不再起作用。例如,看下面的代码,如果“ data_science”不再是下个星期从我的代码中提取出来的二元组,而我又有另一个像“ hello_world”这样的二元组,则不在我的代码中列出。我需要设置一个函数来为我完成所有这些工作。我有大约50个数据框,这些数据框是根据我的真实数据制作的,因此即使没有自动化目的,要实现此功能也将节省大量时间。需要说明的一个关键点是,我从列表中抓取了所有这些二元组,并为它们中的每一个命名了一个数据框。我下面使用list_input的功能是我正在使用的功能。

   data_science = df[df['column_name'].str.contains("data") & 
   df['column_name'].str.contains("science")]
   data_science['bigram'] = "(data_science)"

   p_value = df[df['column_name'].str.contains("p") & 
   df['column_name'].str.contains("value")]
   p_value['bigram'] = "(p_value)"

   ab_testing = df[df['column_name'].str.contains("ab") & 
   df['column_name'].str.contains("testing")]
   ab_testing['bigram'] = "(ab_texting)"```


I am trying something like this code below but have not figured out how to make it work yet.
```def df_creator(a,b, my_list):
    for a,b in my_list:
        a_b = df[df['Message_stop'].str.contains(a) & 
        df['Message_stop'].str.contains(b)]
        a_b['bigram'] = "(a_b)"```

0 个答案:

没有答案