有一个多行30列的CSV文件.我想要的是从第3、6和15列获取数据,然后将其保存在列表中.

使用Python,我如何才能做到这一点,从而不必将整个文件加载到内存中?

有什么建议吗?

推荐答案

我猜在Python中,你可以使用‘iterTools’模型中的‘islice’函数. 以下是此操作的示例代码:

  import csv
from itertools import islice

columns_to_extract = [2, 5, 14]  

with open('filename.csv', 'r') as f:
    reader = csv.reader(f)
    extracted_data = [[] for _ in range(len(columns_to_extract))]
    for row in islice(reader, 1, None):  # Skip header row (if any)
        for i, col_idx in enumerate(columns_to_extract):
            extracted_data[i].append(row[col_idx])

Python相关问答推荐

指示组内的rejected_time是否在creation_timestamp后5分钟内

如何根据另一列值用字典中的值替换列值

我必须将Sigmoid函数与r2值的两种类型的数据集(每种6个数据集)进行匹配,然后绘制匹配函数的求导.我会犯错

提取两行之间的标题的常规表达

我在使用fill_between()将最大和最小带应用到我的图表中时遇到问题

Pystata:从Python并行运行stata实例

Python 约束无法解决n皇后之谜

. str.替换pandas.series的方法未按预期工作

如何在类和classy-fastapi -fastapi- followup中使用FastAPI创建路由

如何过滤包含2个指定子字符串的收件箱列名?

如何将Docker内部运行的mariadb与主机上Docker外部运行的Python脚本连接起来

LocaleError:模块keras._' tf_keras. keras没有属性__internal_'''

在Google Drive中获取特定文件夹内的FolderID和文件夹名称

如何根据rame中的列值分别分组值

如何使用Azure Function将xlsb转换为xlsx?

如何重新组织我的Pandas DataFrame,使列名成为列值?

python的文件. truncate()意外地没有截断'

提取最内层嵌套链接

Python协议不兼容警告

PYTHON中的pd.wide_to_long比较慢