一种选择是使用Python的切片和索引功能来逻辑评估条件所在的位置并覆盖其中的数据。
假设您可以使用直接将数据加载到
pandas其中,
pandas.read_csv则以下代码可能对您有所帮助。
import pandasdf = pandas.read_csv("test.csv")df.loc[df.ID == 103, 'FirstName'] = "Matt"df.loc[df.ID == 103, 'LastName'] = "Jones"如评论中所述,您也可以一次性完成对两列的分配:
df.loc[df.ID == 103, ['FirstName', 'LastName']] = 'Matt', 'Jones'
请注意,您将需要
pandas使用0.11或更高版本来进行
loc覆盖分配操作。
另一种方法是使用所谓的链式分配。这种行为的稳定性较差,因此不是最佳解决方案(在文档中明确建议不要这样做),但是了解以下信息很有用:
import pandasdf = pandas.read_csv("test.csv")df['FirstName'][df.ID == 103] = "Matt"df['LastName'][df.ID == 103] = "Jones"


