首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Python的csv文件中找到匹配的字符串?

如何在Python的csv文件中找到匹配的字符串?
EN

Stack Overflow用户
提问于 2021-04-16 22:19:55
回答 1查看 35关注 0票数 0

我有一个计算气象站列表的前3个最大值的程序。前3个气象站的名称是一个字符串,由排序列表(从max到min)“maxstat”确定,如下所示:

代码语言:javascript
运行
复制
txtmax = '\n{}\n{}\n{}'.format(maxstat[0],
                               maxstat[1],
                               maxstat[2])

例如,其中txtmax可以是

代码语言:javascript
运行
复制
'Baal'
'Arnhem'   
'Arendonk'  

现在我有了另一个用Python导入的csv文件,其中列出了电台的国家(按字母顺序):

代码语言:javascript
运行
复制
countrystationsfile = os.path.join(
    os.path.dirname(__file__),
    'resources', 'stations_country.csv')
countrystations = pd.read_csv(countrystationsfile)

其中,文件如下所示:

代码语言:javascript
运行
复制
    Place   Country Source  Comment
1   Afferden    NL  AMATEUR N/A
2   Alkmaar NL  AMATEUR N/A
3   Almelo  NL  AMATEUR N/A
4   Almere  NL  AMATEUR N/A
5   Appelscha   NL  AMATEUR N/A
6   Archenes    BE  AMATEUR N/A
7   Arendonk    BE  AMATEUR N/A
8   Arnhem  NL  AMATEUR N/A
9   Assen   NL  AMATEUR N/A
10  Avelgem BE  AMATEUR N/A
11  Baal    BE  AMATEUR N/A

如何让txtmax自动在countrystationsfile文件中搜索对应的站点匹配字符串(列位置),从而确定其国家(列Country)?最后,我想为txtmax提供以下内容:

代码语言:javascript
运行
复制
'Baal, BE'
'Arnhem, NL'   
'Arendonk, BE'  

已经谢谢你了!

EN

回答 1

Stack Overflow用户

发布于 2021-04-16 22:31:41

如果DataFrame中的条目是唯一的,您可以从2列创建字典,然后使用该字典映射国家/地区,例如:

代码语言:javascript
运行
复制
d = dict(zip(countrystations['Place'], countrystations['Country']))

然后:

代码语言:javascript
运行
复制
txtmax = '\n{}, {}\n{}, {}\n{}, {}'.format(maxstat[0], d[maxstat[0]],
                                           maxstat[1], d[maxstat[1]],
                                           maxstat[2], d[maxstat[2]])
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67126950

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档