我正在执行一个相对简单的任务,即在数据框列中获取字符串,然后使用这些字符串填充新列。
首先,我创建一个新列,然后根据它在数据帧的“书名”列中找到的字符串,用更新的书名填充它。我需要匹配包括年和季度在内的确切字符串。
我的旧代码是:
#Create empty column to map book names to
datagrouped["Book"] = ""
#Map book names by exact string matching the old values
data['Book'][df['Book Name'] == America [Q3 2018]'] = North America
data['Book'][df['Book Name'] == International [Q3 2018]'] = Intl
data['Book'][df['Book Name'] == Asia [Q3 2018]'] = APAC
理想情况下,我想使用argv,因为我是从命令行运行它的。我已经在代码的前面使用了argv来读取CSV文件,并且它可以工作。我的问题是,我将如何修改它以接受另一个argv(sys.argv [2]),以便可以在命令行中输入年和季度作为参数?到目前为止,我已经尝试过
quarter = sys.argv[2]
datagrouped["Book"] = ""
data['Book'][df['Book Name'] == America + str.quarter] = North America
data['Book'][df['Book Name'] == International + str.quarter] = Intl
data['Book'][df['Book Name'] == Asia + str.quarter] = APAC
如果有任何我需要补充的问题,请告诉我,我将对其进行更新。