假设有一个DataFrame,如下所示
import numpy as np
import pandas as pd
df = pd.DataFrame({'store':range(1,4),
'food':[['fish', 'apple'],
['orange', 'water'],
['egg', 'fish']]})
df
store food
1 [fish, apple]
2 [orange, water]
3 [egg, fish]
我想在所有的df中用“milk”替换“fish”。所以新的DataFrame应该如下所示
store food
1 [milk, apple]
2 [orange, water]
3 [egg, milk]
我尝试过使用“for循环”来完成此操作,但似乎是错误的
food1 = []
for i in range(df.shape[0]):
for j in range(len(df['food'][0])):
if df['food'][i][j] == 'fish':
food1.append('milk')
else:
food1.append(df['food'][i][j])
food1
['milk', 'apple', 'orange', 'water', 'egg', 'milk']
有什么建议如何做到这一点?非常感谢提前!
1条答案
按热度按时间ryhaxcpt1#
下面是一句简单的话,可以做到这一切:
编辑:删除无用代码