Python:比较两个 csv 文件中的特定列

2023-11-23

假设我有两个 CSV 文件(file1 和 file2),其内容如下所示:

file1:

fred,43,Male,"23,45",blue,"1, bedrock avenue"

file2:

fred,39,Male,"23,45",blue,"1, bedrock avenue"

我想比较这两个 CSV 记录,看看第 0、2、3、4 和 5 列是否相同。我不关心第一栏。

这样做最Pythonic的方法是什么?

EDIT:

一些示例代码将不胜感激。

EDIT2:

请注意,需要正确处理嵌入的逗号。


我认为最好的方法是使用Python库:http://docs.python.org/library/csv.html.

更新(添加示例):

import csv
reader1 = csv.reader(open('data1.csv', 'rb'), delimiter=',', quotechar='"'))
row1 = reader1.next()
reader2 = csv.reader(open('data2.csv', 'rb'), delimiter=',', quotechar='"'))
row2 = reader2.next()
if (row1[0] == row2[0]) and (row1[2:] == row2[2:]):
    print "eq"
else:
    print "different"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python:比较两个 csv 文件中的特定列 的相关文章

  • celery任务eta已关闭,使用rabbitmq

    我使用教程中的默认设置和在 ubuntu 上运行的rabbitmq 使 Celery 任务正常进行 当我毫不延迟地安排任务时 一切都很好 但是当我给他们一个预计时间时 他们会被安排在未来 就好像我的时钟在某个地方关闭了一样 下面是一些请求任
  • 如何打印前面有一定数量空格的整数?

    C has printf Xd Y 它只打印整数 X 并使其在控制台窗口上占据 Y 空格 例如 printf 3d 10 console 10 printf 5d 5 console 5 我如何在 python 3 中使用它 This pr
  • 在 SQLAlchemy 中,过滤器是在连接之前还是之后应用?

    使用 SQLAlchemy 我执行如下查询 import models as m import sqlalchemy as sa s session maker q s query m ShareCount m Article join m
  • 我可以在 matplotlib 中的绘图左侧放置一个垂直颜色条吗?

    来自颜色条方法的 matplotlib 命令摘要 http matplotlib org api pyplot api html highlight colorbar matplotlib pyplot colorbar我知道关键字参数or
  • 我可以同时打开两个 Tkinter Windows 吗?

    可以同时打开2个窗口吗 import tkinter as Tk import random import math root Tk Tk canvas Tk Canvas root background image Tk PhotoIma
  • matplotlib:渲染到缓冲区/访问像素数据

    我想使用 matplotlib 生成的图作为 OpenGL 中的纹理 到目前为止 我遇到的 matplotlib 的 OpenGL 后端要么不成熟 要么已经停止使用 所以我想避免使用它们 我当前的方法是将图形保存到临时 png 文件中 并从
  • argparse 不检查位置参数

    我正在创建一个脚本 它使用 argparse 接受位置参数和可选参数 我已经阅读了 Doug 的教程和 python 文档 但找不到答案 parser argparse ArgumentParser description script t
  • 如何在 python 中使用交叉验证执行 GridSearchCV

    我正在执行超参数调整RandomForest如下使用GridSearchCV X np array df features all features y np array df gold standard labels x train x
  • ImproperlyConfigured at / 不允许空静态前缀 - Django

    我正在使用 Django 上传 显示图像 该网站部署在 Heroku 上 下列的this https coderwall com p bz0sng教程我能够成功上传图像 但是 图像并未显示在模板中 然后我了解到我的 urls py 末尾应该
  • Kivy TextInput 水平和垂直对齐(文本居中)

    如何在 Kivy 的 TextInput 中水平居中文本 I have the following screen But I want to centralize my text like this 这是我的 kv 语言的一部分 BoxLa
  • 使用具有可变数量索引的 numpy mggrid

    如何将 numpy mgrid 与可变数量的索引一起使用 我在 github 上找不到任何人将其与硬编码值以外的任何内容一起使用的示例 import numpy as np np mgrid 1 10 1 10 this works fin
  • Django 1.7:如何使用 html/css 文件作为模板发送电子邮件

    从 Django 1 7 开始 可以send email 使用新参数 html message 不幸的是 没有关于如何使用它的全面指南 新手友好 或者至少我找不到它 我需要使发送的电子邮件变得漂亮 因此 我试图弄清楚如何将我的消息包含到 h
  • Python GTK3 Treeview 向上或向下移动选择

    如何在树视图中向上或向下移动所选内容 我的想法是 我可以使用向上和向下按钮将选择向上移动一行或向下移动一行 我的 Treeview 使用 ListStore 不确定这是否重要 首先 我将使用我熟悉的 C 代码 如果您在将其翻译为 Pytho
  • 将 str.contains 映射到 pandas DataFrame

    python 初学者 我正在寻找创建字符串的字典映射以及关联的值 我有一个数据框 想要创建一个新列 如果字符串匹配 则会将该列标记为 x df pd DataFrame comp dell notebook dell notebook S3
  • 在字符串内打印单引号

    我想输出 XYZ s ABC 我在Python IDLE中尝试了以下3条语句 第一条和第二条语句输出 a before 带打印功能的第三条语句不输出 before 作为 Python 新手 我想了解为什么 之前输出 在第 1 条和第 2 条
  • 在Python中随机交错2个数组

    假设我有两个数组 a 1 2 3 4 b 5 6 7 8 9 我想将这两个数组交错为变量 c 注意 a 和 b 不一定具有相同的长度 但我不希望它们以确定性的方式交错 简而言之 仅仅压缩这两个数组是不够的 我不想要 c 1 5 2 6 3
  • 如何将Python包从旧版本安装到新版本?

    我正在使用 python 3 7 最近在 Linux 中安装了 python 3 8 是否有任何 bash 命令或脚本可以获取 3 7 的所有软件包列表并在 3 8 版本中一一安装 我想避免每个包裹都手工完成 注意 我将它们安装在我的系统中
  • 如何使用 keras.backend.gradients() 获取梯度值

    我试图获得 Keras 模型的输出相对于模型输入 x 而不是权重 的导数 似乎最简单的方法是使用 keras backend 中的 梯度 它返回梯度张量 https keras io backend https keras io backe
  • 将二进制数转换为包含每个二进制数的数组

    我试图将二进制值转换为每个 1 0 的列表 但我得到默认的二进制值而不是列表 我有一个字符串 我将每个字符转换为二进制 它给了我一个列表 其中每个字符都有一个字符串 现在我试图将每个字符串拆分为值为 0 1 的整数 但我什么也得不到 if
  • 在Python中使用os.makedirs创建目录时出现权限问题

    我只是想处理上传的文件并将其写入工作目录中 该目录的名称是系统时间戳 问题是我想以完全权限创建该目录 777 但我不能 使用以下代码创建的目录755权限 def handle uploaded file upfile cTimeStamp

随机推荐

  • 完美转发 - 这是怎么回事? [复制]

    这个问题在这里已经有答案了 可能的重复 使用前向的优点 有人可以向我解释一下什么是完美转发吗 http www justsoftwaresolutions co uk cplusplus rvalue references and perf
  • SQLite 使用 sqlite-net 加入 Windows 8 Metro C#

    我正在使用 C 和 SQLite 作为 Windows 8 Metro App 的数据库 我想使用 Join Command 但不知道如何读取给定的回数据 这是行不通的 db Query
  • CodeMirror 有内容,但只有按下按键才会显示

    我有一个 CodeMirror 实例嵌入在我正在构建的 web 应用程序中 它工作得很好 除了在用户输入新字符之前不会显示初始内容 因此 一切都在那里 只是隐藏起来 直到用户强制更改为止 这不好 有什么方法可以强制重新绘制或刷新浏览器来模拟
  • 搜索栏取消按钮有时在 ios 7 中不起作用

    当搜索栏最初隐藏时 搜索栏中的取消按钮在 iOS 7 中不起作用 我按照本教程在表格视图中创建搜索栏 raywenderlich 教程 本教程中有一个示例项目 使用该项目比我的解释更好 在 iOS 5 和 6 中工作正常 我已经审查了所有代
  • 提取具有属性的相关矩阵的一个三角形

    我有一个相等行和列的数据框 矩阵 我只想提取上三角形或下三角形 x lt data frame matrix 1 25 nrow 5 colnames x lt LETTERS 1 5 rownames x lt LETTERS 1 5 x
  • 如何在 WPF 中禁用 ListView 标题的移动/重新排序?

    WPF ListView 控件允许通过拖放对列重新排序 有什么办法可以禁用它吗 我希望一些 WPF 大师可以帮助我
  • 如何在 Node.js 中检查 ASP.NET 密码哈希

    首先我读了这个使用 SHA256 和 NET Node js 对密码进行哈希处理这对我没有帮助 我必须验证在 Node js 环境中的 ASP NET 中创建的密码哈希值 有人告诉我密码是使用以下算法生成的 ASP NET 成员资格使用的默
  • 检测到 globalKeyboardHook 中的 CallbackOnCollectedDelegate

    我正在使用全局键盘挂钩类 此类允许检查是否在任何地方按下了键盘按键 一段时间后我遇到了一个错误 CallbackOnCollectedDelegate was detected A callback was made on a garbag
  • 使用 else 子句终止 if ... else if 构造有什么好处?

    我们的组织有一个required编码规则 没有任何解释 if else if 构造应以 else 子句终止 示例1 if x lt 0 x 0 else not needed 示例2 if x lt 0 x 0 else if y lt 0
  • Bootstrap:具有绝对定位的容器?

    我有以下标记 div class banner wrapper div class banner image style background image url div div class container div class row
  • 如何终止与 SQL Server 2005 数据库的所有当前连接?

    我想重命名数据库 但不断收到数据库 无法获取独占锁 的错误 这意味着某些连接仍然处于活动状态 如何终止与数据库的所有连接以便重命名它 该方法的原因是亚当建议不起作用的是 在您循环活动连接的过程中 可以建立新的连接 并且您会错过这些连接 您可
  • 跨 C API 边界传递异常

    我正在用 C 编写一个库 它使用旧的 C API 我的库的客户端可以指定回调函数 这些函数是通过我的库间接调用的 而我的库是通过C API调用的 这意味着必须处理客户端回调中的所有异常 我的问题是 如何捕获边界一侧的异常 并在重新跨越 C
  • Azure Powershell - 检查资源是否存在

    我正在使用 Powershell 自动设置我的 Azure 环境 创建存储帐户 数据库 网站等 在开发过程中 我想要提供和拆除很多东西 很多时候 我想运行我的配置脚本并创建一个天蓝色资产如果它还不存在 但是 我还没有找到一种优雅的方法来做到
  • android studio gradle版本增量

    我正在尝试在 gradle android studio 中设置一个不错的小版本控制脚本 其中版本名称在每次构建时都会增加 而版本代码仅在我进行发布构建时才会增加 这可能吗 我认为可以解决这个问题的是检查下面的 if 语句是否是一个版本 但
  • Jersey 序列化/反序列化问题:抽象类型只能使用附加类型信息进行实例化

    我使用 jersey 进行序列化和反序列化 我已经使用 jersey 在 WebLogic 上创建了 REST 通道 我有包含抽象类的结果对象 Jersey 将此类的实现名称添加到结果元数据中 order type installation
  • 用代数方法简化平方根

    我想以代数方式简化整数的平方根 而不是以数字方式计算它 即 800应该20 2 not 28 2842712474619 我找不到任何方法通过编程来解决这个问题 对根下的数字进行因式分解 选出成对出现的因式 将其余的留在根下 800 2 x
  • 隐藏 TreeView 项目

    我一直在尝试隐藏 TreeView 中的项目 我使用自定义数据类型作为源 称为 SettingsMenuItem 它继承自 FrameworkElement 当前为 FrameworkContentElement 因为否则 TreeView
  • Java中的静态块[重复]

    这个问题在这里已经有答案了 前几天我正在查看一些代码 我发现 static 来自 C 我不知道为什么会出现这种情况 这不是一个错误 因为代码编译得很好 这个 静态 代码块是什么 It s a 静态初始化器 它在类加载 或准确地说是初始化 但
  • HTML5 中的 iframe 拉伸

    我有两个 html 文件 一个包含另一个带有 iframe 的文件 我想让这个 iframe 拉伸到父 html 的整个高度 所以第一个 html 文件 具有红色背景 如下所示 第二个 具有蓝色背景
  • Python:比较两个 csv 文件中的特定列

    假设我有两个 CSV 文件 file1 和 file2 其内容如下所示 file1 fred 43 Male 23 45 blue 1 bedrock avenue file2 fred 39 Male 23 45 blue 1 bedro