Python 使用pandas从另一个df创建新df,并用条件填充

Python 使用pandas从另一个df创建新df,并用条件填充,python,pandas,dataframe,Python,Pandas,Dataframe,Hel lo我需要帮助,以便从该文件创建nex df: Groups COL1 COL2 COL3 COL4 COL5 0 G1 DJJE):Canis_lupus ABFC Canidae 4 3 1 G1 JUUI):Canis_canis YH Canidae 10 12 2 G1 KI):Lupus_lupus ZA ca

Hel lo我需要帮助,以便从该文件创建nex df:

      Groups                   COL1  COL2     COL3  COL4  COL5
0     G1      DJJE):Canis_lupus  ABFC  Canidae     4     3
1     G1      JUUI):Canis_canis    YH  Canidae    10    12
2     G1        KI):Lupus_lupus    ZA  canidae     2    12
3     G2  IOZ):Felis_sylvestris    OP  Falidae     0     2
4     G2        KI):Felis_felis    UI  Falidae     6     8
5     G3        YY):Canis_lupus    ER  Raninae     7     9
6     G3        SD):Canis_lupus    GH  Raninae     2     3
7     G3        DZ:)Lupus_lupus    EZ  Raninae     6     8
8     G4           KUU):O_outan    LO  Babounae    4     8
9     G4   OK:)Felis_sylvestris    IO  Babounae    4     8
9     G4   LK:)Felis_sylvestris    IU  Babounae    8     9
其思想是让每个
创建一个df,其中列
COL3
作为第一列,然后通过添加新列和字母来填充它

以下是一个例子:

G1
3个不同的名称组成(在
:)
模式之后): -犬狼疮
-
Canis\u Canis
-狼疮

然后,如果
COL4
COL5
的值都是
>5
我在新的df中分配值
A
如果
COL4
COL5<5
则我在新的df中分配值
B

ex
DJJE):犬科狼疮
既有
COL4又有
COL5
那么
犬科狼疮
中的
犬科狼疮
将有一个
B

ex
YY):犬狼疮
G3 h
ave
COL4和COL5>5
中,则
RANIANE
中的犬狼疮
将有一个
a

如果存在同时存在
COL4和COL5>5
COL4和COL5<5
的情况,例如:

第5行
第6行
对于
犬狼疮
拉尼娜
中,然后A>B,所以我给字母A

如果
COL4>5
COL5<5
则我给出字母
B

如果
COL4<5
COL5>5
则我给出字母
B
以下是预期输出:

COL3     Canis_lupus Canis_canis Lupus_lupus Felis_sylvestris O_outan 
Canidae  B           A           A           NA               NA   
Falidae  A           NA          NA          B                A    
Raninae  A           NA          A           NA               NA  
Babounae NA          NA          NA          A                B    
以下是数据:


{'Groups':{0:'G1',1:'G1',2:'G1',3:'G2',4:'G2',5:'G3',6:'G3',7:'G3',8:'G4',9:'G4',10:'G4'},'COL1':{0:'DJJE]:犬类狼疮',1:'JUI]:犬类狼疮',2:'KI]:狼类狼疮',3:'IOZ]:熊类狼疮',4:'KI]:熊类狼疮',5:'YY]:熊类狼疮',6:'SD]:犬类狼疮',7:'DZ:)狼类狼疮',8:'KUU:'outan',9:'OK:)熊类狼疮',10:'LK:)熊类狼疮','COL2':{0:'ABFC',1:'YH',2:'ZA',3:'OP',4:'UI',5:'ER',6:'GH',7:'EZ',8:'LO',9:'IO',10:'IU'},'COL3':{0:'Canidae',1:'Canidae',2:'Falidae',4:'Falidae',5:'Raninae',6:'Raninae',7:'Raninae',8:'Babounae 9:'Babounae 10:'COL4:{0:4,1:10,1:10,2:10,2:10,2:10:4:10:10:10:10:4},'COL5':{0:3,1:12,2:12,3:2,4:8,5:9,6:3,7:8,8:8,9:8,10:9}

雷尼亚科的行数既大于又小于5。你如何处理这一问题。同样,对于犬科,它有一行列,列数4小于5,列数5大于5。你不具备以下条件:that@sammywemmy如果我们有两个不同的情况,那么行数大于5的那一个获胜,因此单元格中有字母A@sammywemmy你有一个想法?其他人会接受…我会给它一个目标来编辑你的代码以覆盖所有条件,例如索引2,其中a列小于5,B列大于5。。。