This is a personal project made when I had to explore extensive lists of genes and related biological processes across experiments. The main question was "I have many experimental groups. Each group has different elements, and each element has different characteristics. How do I get which elements are common to each pair of groups and sum up their characteristics?"
Group1_Resources | Group1_Components_made_from_resources | Group2_Resources | Group2_Components_made_from_resources |
---|---|---|---|
clay | pot,jar,tile | rock | limestone,chalk,marble |
petroleum | plastic,fuel,asphalt,sweetner | sand | chips,glass |
rock | marble,iron,copper | petroleum | fuel,fungicide |
Using this example as a template, synergize compares both "Resources" rows, then "Components_made_from_resources" and returns which are similar and how many "Components_made_from_resources" are common.
Elements | Characteristics | Total |
---|---|---|
rock | limestone,chalk,marble,iron,copper | 5 |
petroleum | plastic,fuel,asphalt,sweetner,fungicide | 5 |
The function accept a dataframe as input. The arguments el1 and el2 are the elements of each group, char1 and char2 are their characteristics, and name1, name2, name3 are the names for each column in the final table (default is 'Element', 'Characteristics' and 'Total', respectively).
The data frame values must be padronized. Be very cautious about typos, and letter case and avoid whitespaces.
Python version does not accept "nan" values in the characteristics column