提取包含特定名称的列

2023-11-26

我正在尝试使用它来操作大型 txt 文件中的数据。

我有一个包含 2000 多列的 txt 文件,其中大约三分之一的标题包含“Net”一词。我只想提取这些列并将它们写入新的 txt 文件。关于我如何做到这一点有什么建议吗?

我四处搜寻了一下,但没能找到对我有帮助的东西。如果之前曾提出并解决过类似问题,我们深表歉意。

编辑1:谢谢大家!在撰写本文时,3 位用户提出了解决方案,而且它们都运行得很好。老实说,我不认为人们会回答,所以我一两天没有检查,对此感到高兴和惊讶。我印象非常深刻。

编辑2:我添加了一张图片,显示原始txt文件的一部分是什么样子,以防将来对任何人有帮助:

Sample from original txt-file


一种无需安装第三方模块(如 numpy/pandas)的方法如下。给定一个名为“input.csv”的输入文件,如下所示:

a、b、c_net、d、e_net

0,0,1,0,1

0,0,1,0,1

(删除中间的空行,它们只是为了格式化 这篇文章的内容)

下面的代码可以实现你想要的功能。

import csv


input_filename = 'input.csv'
output_filename = 'output.csv'

# Instantiate a CSV reader, check if you have the appropriate delimiter
reader = csv.reader(open(input_filename), delimiter=',')

# Get the first row (assuming this row contains the header)
input_header = reader.next()

# Filter out the columns that you want to keep by storing the column
# index
columns_to_keep = []
for i, name in enumerate(input_header):
    if 'net' in name:
        columns_to_keep.append(i)

# Create a CSV writer to store the columns you want to keep
writer = csv.writer(open(output_filename, 'w'), delimiter=',')

# Construct the header of the output file
output_header = []
for column_index in columns_to_keep:
    output_header.append(input_header[column_index])

# Write the header to the output file
writer.writerow(output_header)

# Iterate of the remainder of the input file, construct a row
# with columns you want to keep and write this row to the output file
for row in reader:
    new_row = []
    for column_index in columns_to_keep:
        new_row.append(row[column_index])
    writer.writerow(new_row)

请注意,没有错误处理。至少有两个需要处理。第一个是检查输入文件是否存在(提示:检查 os 和 os.path 模块提供的功能)。第二个是处理空白行或列数不一致的行。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

提取包含特定名称的列 的相关文章

随机推荐

  • 数据聚合 mongodb vs mysql

    我目前正在研究用于具有严格数据聚合要求的项目的后端 项目主要要求如下 为每个用户存储数百万条记录 用户每年可能拥有超过 100 万个条目 因此即使有 100 个用户 我们每年也会有 1 亿个条目 这些条目的数据聚合必须即时执行 用户需要能够
  • 无法从 List 转换为 List

    我正在尝试传递一个列表DerivedClass一个函数 它接受一个列表BaseClass 但我收到错误 cannot convert from System Collections Generic List
  • React.js Material-UI 中的 BottomNavigation 样式

    如何将所选链接 本例中为主页 的图标和文本颜色更改为红色 并将非活动链接 本例中为课程和作者 的图标和文本颜色更改为绿色 文档非常薄 class MyBottomNavigation extends Component render ret
  • scipy.linalg.solve (LAPACK gesv) 在大矩阵上的时间复杂度?

    如果我使用scipy linalg solve 我相信这称为 LAPACK 的 gesv 函数 在我的工作站上解决约 12000 个未知问题 具有约 12000 个平方 密集 非对称矩阵 时 我得到了一个很好的答案10 15分钟 只是为了探
  • sql表中的树形视图

    我有如下所示的 sql 表 我必须在树视图中显示它 id parentid name 1 NULL outlook 2 1 overcast 3 1 rainy 4 1 sunny 5 2 yes 6 3 wind 7 4 humidity
  • 在 django Forms 中定义 css 类

    假设我有一个表格 class SampleClass forms Form name forms CharField max length 30 age forms IntegerField django hacker forms Bool
  • 为什么 Jupyter 显示图表两次?

    我将从 Jupiter 开始分析一些销售数据 它有效 但每次我绘制图表时 图表都会显示两次 我的笔记本中的前两个图表是在班级内绘制的 对于这些图表来说 这种情况不会发生 注意 Model这里指的是产品的模型 而不是预测模型 class Mo
  • UIStepper - 找出它是递增还是递减

    确定在 UIStepper 中是否按下了加号或减号按钮我使用以下方法 void stepperOneChanged UIStepper stepperOne 而我比较stepperOne value全局值保存在我的 TableView 类中
  • 如何使用 Knife 编辑 ec2 节点的 Chef 属性

    我想使用编辑 ec2 节点的 node dataknife node命令 我可以使用以下命令手动执行此操作 knife node edit NODE NAME它将生成一个我需要编辑的 json name NODE 1 3 chef envi
  • matplotlib - 从等高线提取数据

    我想从均匀间隔的二维数据 类似图像的数据 的单个轮廓中获取数据 基于类似问题中发现的示例 如何获取等高线图 matplotlib 绘制的线的 x y 值 gt gt gt import matplotlib pyplot as plt gt
  • Anaconda Python:删除 pkgs 中的 .tar.gz

    删除 tar gz文件会有问题吗C Users username AppData Local conda pkgs 我还看到同一 Python 包的 Python 子目录 但版本不同 例如 pandas 0 19 2 np111py27 1
  • Tensorflow 无法识别 cudart64_101.dll

    我的路径中有一个DLL文件 C Program Files NVIDIA GPU Computing Toolkit CUDA v10 1 bin cudart64 101 dll but TensorFlow似乎不认识它 2020 03
  • Maven 多模块:将公共依赖项聚合在一个模块中?

    我搜索了这样的问题但没有找到任何东西 所以我就在这里 我有一个多模块 Maven 项目 多个模块都继承同一个父模块 其中定义了共同的依赖关系 其中 有一个我自己的模块 一个 通用 模块 其中实现了一些通用功能 我的问题是 对于常见依赖项 更
  • 如何显示字节数组十六进制值?

    您好 我正在 c 中制作应用程序 我有包含十六进制值的字节数组 我想将这些值写入文件中 而不将其转换为字符串或其他任何内容 请帮助我 提前致谢 我来晚了一点 但没人提到比特转换器为你带来一点魔力的课程 public static strin
  • System.loadLibrary 不起作用。链中第二个库的 UnsatisfiedLinkError

    我有java程序Client class 它通过JNI使用cpp共享库libclient so libclient so 构建为共享并使用 cpp 共享库 libhttp so libclient so 和 libhttp so 放在文件夹
  • 如何从字符串中删除精确出现的字符?

    例如 我有一个像这样的字符串 string str santhosh phani ravi phani123 praveen sathish prakash 我想删除字符 phani from str 现在 我正在使用str str Rep
  • 在网页上嵌入 Powerpoint 查看器 (PHP)

    我正在构建一个 PHP 应用程序 用户可以在其中上传 Powerpoint 文件 我希望其他用户在线查看而不是下载 使用像google docs这样的第三方应用程序对于用户来说可能有点麻烦 是否可以用PHP编写powerpoint查看器代码
  • Itextsharp 为 IElement 设置字体

    var htmlarraylist HTMLWorker ParseToList new StringReader htmlText styles document Open BaseFont Vn Helvetica BaseFont C
  • 尝试访问数据帧列显示“<绑定方法 NDFrame.xxx...”

    我在 Jupyter 笔记本中创建 DataFrame 对象 data state Ohio Ohio Ohio Nevada Nevada year 2000 2001 2002 2000 2001 pop 1 5 2 0 3 6 2 4
  • 提取包含特定名称的列

    我正在尝试使用它来操作大型 txt 文件中的数据 我有一个包含 2000 多列的 txt 文件 其中大约三分之一的标题包含 Net 一词 我只想提取这些列并将它们写入新的 txt 文件 关于我如何做到这一点有什么建议吗 我四处搜寻了一下 但