Python 如何迭代CSV文件并基于另一列的值更新一列中的值
我有一个csv文件,其中一列标题为“pages”,该文件的所有行都为空。我想根据该行的“size”值在每行中填写此空值。例如,如果大小小于100,则我希望将空值替换为1,如果“大小”值大于100,则我希望将空值替换为2。我正在用python做这件事。我试过一些方法,比如:Python 如何迭代CSV文件并基于另一列的值更新一列中的值,python,csv,Python,Csv,我有一个csv文件,其中一列标题为“pages”,该文件的所有行都为空。我想根据该行的“size”值在每行中填写此空值。例如,如果大小小于100,则我希望将空值替换为1,如果“大小”值大于100,则我希望将空值替换为2。我正在用python做这件事。我试过一些方法,比如: data = pd.read_csv("example.csv") data["pages"] = "" data.to_csv("example.csv", index=False) for r
data = pd.read_csv("example.csv")
data["pages"] = ""
data.to_csv("example.csv", index=False)
for row in data.iterrows():
if row['size']>100:
data["pages"]= "1"
但它不起作用。我上传了一张数据的图片。
谢谢你的帮助 您可以使用方法来执行此操作。请尝试此操作
data["pages"] = data["size"].apply(lambda x: "2" if x>100 else "1")
还是像这样
data["pages"] = (data["size"]>100).map({True: '2', False: '1'})
您可以使用方法来执行此操作。请尝试此方法
data["pages"] = data["size"].apply(lambda x: "2" if x>100 else "1")
还是像这样
data["pages"] = (data["size"]>100).map({True: '2', False: '1'})