小编Nil*_*ils的帖子

Pandas Dataframe 使用 lambda 函数添​​加列

我正在尝试使用随机生成的两个大写字母的代码向我的 Pandas Dataframe 添加一列。对于随机代码生成,我编写了一个函数,但是当我将其添加到数据帧时,它只给出 NaN 作为结果。知道如何解决这个问题吗?

import pandas as pd
import random
import string

def generateCode():
    return random.choice(string.ascii_uppercase) + random.choice(string.ascii_uppercase)

cars = {'Brand': ['Honda Civic','Toyota Corolla','Ford Focus','Audi A4'],
        'Price': [22000,25000,27000,35000]
        }
df = pd.DataFrame(cars, columns = ['Brand', 'Price'])

df['Code'] = df.apply(lambda x: generateCode())

print(df)
Run Code Online (Sandbox Code Playgroud)

给出输出:

            Brand  Price Code
0     Honda Civic  22000  NaN
1  Toyota Corolla  25000  NaN
2      Ford Focus  27000  NaN
3         Audi A4  35000  NaN
Run Code Online (Sandbox Code Playgroud)

感谢任何帮助!

python lambda dataframe python-3.x pandas

5
推荐指数
1
解决办法
6079
查看次数

标签 统计

dataframe ×1

lambda ×1

pandas ×1

python ×1

python-3.x ×1