python - Python:熊猫,导入单列,作为列表
问题描述
我正在尝试将数据从 csv 文件导出到列表中。这是一份葡萄酒及其颜色的清单但是当我测试一个元素是否在清单中时,我得到了一个假阴性。当我检查列表时,我想我不小心创建了一个嵌套列表
我的问题是,我应该做些什么改变才能得到一份酒单。
with open('colour_red.csv', 'r', encoding='utf-8-sig', errors='ignore') as f:
red_reader = csv.reader(f)
wine_list_red = list(red_reader)
如果我打印一个元素,我会得到:
[['Agni', 'R']]
如果我打印整个列表,我会得到:
[['Prime_variety', 'Colour'],
['Abondant', 'W'],
['Afus Ali', 'W'],
['Agadai', 'W'],
['Airen', 'W'],
['Alarije', 'W'],...]
第二个问题:如果我运行这个我怎么会出错。
if 'Abondant' in wine_list_red:
print('True')
else:
print('False')
解决方案
如果您有如下列表:
original_list = [['Prime_variety', 'Colour'],
['Abondant', 'W'],
['Afus Ali', 'W'],
['Agadai', 'W'],
['Airen', 'W'],
['Alarije', 'W'],...]
你只想要酒单,你可以这样做:
wine_list = [x[0] for x in original_list if x[0] != "Prime_variety"]
>>> 'Abondant' in wine_list
True
您可以使用pandas
:
import pandas as pd
df = pd.read_csv("colour_red.csv")
print(df["Prime_variety"].tolist())
推荐阅读
- linux-kernel - 自定义相机传感器驱动程序无法与显示驱动程序一起使用
- python - 如何优化类方法中实例的遍历?
- sql - 如何保留从一条消息到第一次回复消息的值?
- javascript - 生成转换 ENOENT
- rust - 在 rust 中创建一个引用数组
- azure - 是否可以在单区域区域冗余配置中使用 Azure Cosmos DB 上的 Scalar DB?
- angular - 屏幕阅读器读出 html 元素
- go - 有没有办法处理上传文件的安全检查
- image - 如何使用 X-Unset 创建草稿电子邮件 .eml 而不会弄乱内联图像(HTML 内容)
- javascript - 错误:评估失败:ReferenceError:页面未定义 Puppeteer Node.js