Python:如何将货币对视为按相反顺序形成的货币对?

Python:如何将货币对视为按相反顺序形成的货币对?,python,pandas,database,dataframe,Python,Pandas,Database,Dataframe,我想按货币对分组行,但遇到了一些问题。根据输入,对于前两行,USD GBP和GBP USD实际上指的是同一货币对,但货币顺序相反。我如何将它们视为相同的货币,并将VR列按相同的货币对求和?非常感谢 可在下面找到输入: Qualifier FirstCurrency SecondCurrency VR 0 USDGBP USD GBP 50000 1 GBPUSD GBP U

我想按货币对分组行,但遇到了一些问题。根据输入,对于前两行,USD GBP和GBP USD实际上指的是同一货币对,但货币顺序相反。我如何将它们视为相同的货币,并将VR列按相同的货币对求和?非常感谢

可在下面找到输入:

  Qualifier FirstCurrency SecondCurrency            VR
0    USDGBP           USD            GBP  50000
1    GBPUSD           GBP            USD  60000
2    BRLUSD           BRL            USD  90000
3    EURQAR           EUR            QAR  30000
4    HKDKRW           HKD            KRW -10000
5    CNYSGD           CNY            SGD  20000
6    RUBTRY           RUB            TRY -14570
7    KRWBRL           KRW            BRL  28650

您可以尝试在对以下货币进行sirting后创建一个
元组

df['grpupable']=df['Qualifier'].apply(lambda x:tuple(排序([x[:3],x[3:]))
示例:现在您可以像这样对它们进行分组

df.groupby(['grpupable'])['VR'].sum()
更新: 要更改
FirstCurrency
LastCurrency
使用。或者您可以创建一个新列

df['FirstCurrency']=df['grpupable'].str[0]
df['SecondCurrency']=df['grpupable'].str[1]
#或
#df['CurrencyA']=df['grpupable'].str[0]
#df['CurrencyB']=df['grpupable'].str[1]

非常感谢您的帮助!在对VR求和后,如何将元组df['grpupable']转换为df?我想将元组分成两个货币列,以便以后进一步计算。@user15253500检查更新
grpupable
(BRL, KRW)     28650
(BRL, USD)     90000
(CNY, SGD)     20000
(EUR, QAR)     30000
(GBP, USD)    110000
(HKD, KRW)    -10000
(RUB, TRY)    -14570