Python ';numpy.float64';对象没有属性';应用';

Python ';numpy.float64';对象没有属性';应用';,python,python-3.x,Python,Python 3.x,我试图根据另一个单元格的值更改单元格值(颜色为“红色”或“绿色”)。我运行以下命令: df.loc[0, 'Colour'] = df.loc[0, 'Count'].apply(lambda x: 'Red' if x <= 500 else 'Green') 当您使用df.loc[0,'Count']时,非常感谢您提供的任何帮助。您只返回实际为浮动的位置的项目apply是Pandas或numpy系列的一个方法,因此您需要一个series类来使用该方法。所以很可能你想做这样的

我试图根据另一个单元格的值更改单元格值(颜色为“红色”或“绿色”)。我运行以下命令:

df.loc[0, 'Colour'] = df.loc[0, 'Count'].apply(lambda x: 'Red' if x <= 500 
    else 'Green')

当您使用
df.loc[0,'Count']
时,非常感谢您提供的任何帮助。

您只返回实际为
浮动的位置的项目
apply
是Pandas或numpy系列的一个方法,因此您需要一个
series
类来使用该方法。所以很可能你想做这样的事情,但是如果没有测试数据集,很难知道

df['Colour'] = df['Count'].apply(lambda x: 'Red' if x <=500 else 'Green')

如果您想使用
.loc
访问整个列,您可以使用
df.loc[:,'Count']
您可以在此处阅读有关该方法的更多信息

谢谢,我确实想更改一个单元格,而不是一个列如果您只想更改一个单元格,则不能使用apply,然后您可以始终使用内联If语句
df.loc[0,'color']='Red'如果df.loc[0,'Count']
df['Colour'] = df['Count'].apply(lambda x: 'Red' if x <=500 else 'Green')
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randint(0,1000,size=(10, 4)), columns=list('ABCD'))
df['Colour'] = df['A'].apply(lambda x: 'Red' if x <=500 else 'Green')
df.head()
    A   B   C   D   Colour
0   223 360 133 285 Red
1   300 125 642 238 Red
2   118 293 442 382 Red
3   448 357 55  124 Red
4   995 395 658 559 Green