我试图用随机生成的两个大写字母的代码向Pandas数据框添加一列。对于随机代码生成,我编写了一个函数,但当我将其添加到数据帧时,结果只给出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)
给出输出:
Brand Price Code
0 Honda Civic 22000 NaN
1 Toyota Corolla 25000 NaN
2 Ford Focus 27000 NaN
3 Audi A4 35000 NaN
谢谢你的帮助
使用^{} 处理每个值:
或^{} 和
axis=1
用于每行处理:别问我为什么,但这确实奏效了:
如果有人能解释为什么会这样,我将不胜感激
相关问题 更多 >
编程相关推荐