首页 > 解决方案 > 如何根据同一个csv文件中的其他列在csv中写入一个空列

问题描述

我不知道这是否是一个非常简单的问题,但我想根据另外两列做一个条件语句。我有两列,例如:年龄和 SES 以及另一个应该基于这两列的空列。比如一个人65岁,对应的社会经济地位高,那么在第三栏(空栏=活力等级),例如给定值1 。我对我想要实现的目标有所了解,但是我不知道如何在 python 本身中实现它。我知道我应该使用for循环,我知道如何编写条件,但是由于我想考虑两列来确定将在空列中写入的内容,我不知道如何在函数中编写它以及如何编写回到同一个csv(在各自的空列中)

[ 在此处输入图像描述]

标签: pythoncsvfor-loopconditional-statements

解决方案


使用 pandas 模块将 csv 作为 DataFrame 对象导入。然后您可以执行逻辑语句来填充空列:

import pandas as pd
df = pd.read_csv('path_to_file.csv')
df.loc[(df['age']==65) & (df['SES']=='high'), 'vitality_class'] = 1
df.to_csv('path_to_new_file.csv', index=False)

推荐阅读