Python 数据帧合并

Python 数据帧合并,python,pandas,Python,Pandas,我需要帮助。我必须通过添加新列并在其中添加百分比来合并这些数据帧(示例)。 如果“level”您可以对每一行应用一个函数,如下所示: import pandas as pd def levels(s): if 5000 < s <= 7000: return '5%' elif 7000 < s <= 10000: return '7%' elif s > 10000: return '10%

我需要帮助。我必须通过添加新列并在其中添加百分比来合并这些数据帧(示例)。
如果“level”您可以对每一行应用一个函数,如下所示:

import pandas as pd

def levels(s):
    if 5000 < s <= 7000:
        return '5%'
    elif 7000 < s <= 10000:
        return '7%'
    elif s > 10000:
        return '10%'

df = pd.DataFrame({'name':['A','B','C','D','E','F','G'],'sum':[6500,3000,15000,1400,8600,5409,9999]})
df['Percent'] = df.apply(lambda x: levels(x['sum']), axis=1)

print(df)

  name    sum Percent
0    A   6500      5%
1    B   3000    None
2    C  15000     10%
3    D   1400    None
4    E   8600      7%
5    F   5409      5%
6    G   9999      7%
将熊猫作为pd导入
def水平:

如果5000temp = data[data['sum'] >= levels['lev'][2]] temp['proc']=levels['proc'][2] lev3 = temp temp = data[levels['lev'][1]<=data['sum'] and data['sum']<=levels['lev'][2]] temp['proc']=levels['proc'][1] lev2 = temp temp = data[levels['lev'][0]<=data['sum'] and data['sum']<=levels['lev'][1]] temp['proc']=levels['proc'][0] lev1 = temp data = pd.concat([lev1,lev2,lev3,data])
import pandas as pd

def levels(s):
    if 5000 < s <= 7000:
        return '5%'
    elif 7000 < s <= 10000:
        return '7%'
    elif s > 10000:
        return '10%'

df = pd.DataFrame({'name':['A','B','C','D','E','F','G'],'sum':[6500,3000,15000,1400,8600,5409,9999]})
df['Percent'] = df.apply(lambda x: levels(x['sum']), axis=1)

print(df)

  name    sum Percent
0    A   6500      5%
1    B   3000    None
2    C  15000     10%
3    D   1400    None
4    E   8600      7%
5    F   5409      5%
6    G   9999      7%