如何按行的前3个字符对文本文件进行分组?

萨哈尔

我有一个包含三列的列表:ID,经度,纬度:


我的文本文件的一部分:

AFJ.SPZ.IR.8    46.84   38.463
AKL.SPZ.IR.11   46.691  38.399
AKL.SPZ.IR.12   46.722  38.407
AFJ.SPZ.IR.3    46.812  38.433
AFJ.SPZ.IR.8    46.84   38.463
AKL.SPZ.IR.11   46.691  38.399
AKL.SPZ.IR.12   46.722  38.407
AKL.SPZ.IR.13   46.654  38.404
AKL.SPZ.IR.25   46.699  38.442
AKL.SPZ.IR.3    46.812  38.433
AKL.SPZ.IR.8    46.84   38.463
ALA.SPZ.IR.3    46.812  38.433
ANAR.BHZ.IR.8   46.84   38.463
ANJ.SPZ.IR.13   46.654  38.404
ANJ.SPZ.IR.18   46.662  38.399
ANJ.SPZ.IR.3    46.812  38.433
BST.SPZ.IR.1    46.732  38.457
BST.SPZ.IR.10   46.707  38.448
BST.SPZ.IR.11   46.691  38.399
BST.SPZ.IR.12   46.722  38.407

我想执行一个函数来对具有相同的first3characters的id进行lon和lat。我的代码:

from itertools import groupby

with open('coors1.txt') as fin:
    lines = (line.split() for line in fin)
    for l in lines:
        a=l[0].split(".")
        for key, items in groupby(l,a):
            print (items)

    TypeError: 'str' object is not callable

为什么groupby不了解str?

四人
  1. 您需要先对数据进行排序,然后再申请 groupby
  2. 您需要将键指定为函数,而不是字符串

    from itertools import groupby
    with open('Input.txt') as fin:
        lines = sorted([line.rstrip() for line in fin])
    for item, grp in groupby(lines, key = lambda x:x.split(".")[0]):
        print item, list(grp)
    

输出

AFJ ['AFJ.SPZ.IR.3    46.812  38.433', 'AFJ.SPZ.IR.8    46.84   38.463', 'AFJ.SPZ.IR.8    46.84   38.463']
AKL ['AKL.SPZ.IR.11   46.691  38.399', 'AKL.SPZ.IR.11   46.691  38.399', 'AKL.SPZ.IR.12   46.722  38.407', 'AKL.SPZ.IR.12   46.722  38.407', 'AKL.SPZ.IR.13   46.654  38.404', 'AKL.SPZ.IR.25   46.699  38.442', 'AKL.SPZ.IR.3    46.812  38.433', 'AKL.SPZ.IR.8    46.84   38.463']
ALA ['ALA.SPZ.IR.3    46.812  38.433']
ANAR ['ANAR.BHZ.IR.8   46.84   38.463']
ANJ ['ANJ.SPZ.IR.13   46.654  38.404', 'ANJ.SPZ.IR.18   46.662  38.399', 'ANJ.SPZ.IR.3    46.812  38.433']
BST ['BST.SPZ.IR.1    46.732  38.457', 'BST.SPZ.IR.10   46.707  38.448', 'BST.SPZ.IR.11   46.691  38.399', 'BST.SPZ.IR.12   46.722  38.407']

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

仅显示文本文件中特定行的前36个字符

来自分类Dev

如何使用vi删除文本文件中每行的前5个字符?

来自分类Dev

将行从1个文本文件写入新文本文件,不包括前18个字符

来自分类Dev

如何按第一个单词对文本文件的行进行排序?

来自分类Dev

删除文本文件中每行的前10个字符

来自分类Dev

从文本文件中获取一行的前n个字符?

来自分类Dev

如何使用C#在文本文件行中逐个字符地读取

来自分类Dev

如何使用PHP按每行中的第二个索引对文本文件进行排序

来自分类Dev

如何从文本文件中按顺序或控制方式提取2个字符串之间的特定数据如果满足多个这样的实例

来自分类Dev

使用批处理脚本解析文本文件,并从每行中删除前2个字符

来自分类Dev

C#如何从文本文件中删除最后2个字符并在我的文本末尾写入同一行?

来自分类Dev

如何根据第二个文本文件对文本文件中的行进行排序

来自分类Dev

在同时对文本文件进行某些操作之后,如何删除该文本文件中的特定行

来自分类Dev

如何按列对文本文件进行排序并保持原始顺序

来自分类Dev

如何在python中按降序对文本文件进行排序?

来自分类Dev

如何使用gedit按字母顺序对文本文件中的行进行排序

来自分类Dev

如何在 PHP 中按名字对文本文件内容进行排序?

来自分类Dev

如何读取具有特定单词的文本文件的行到数组,并获取该数组中最后一行的前四个字符?

来自分类Dev

文本文件包含1或2或3个字符串,后跟双精度字。如何读取字符串?(每行开头都有1或2或3个字符串)

来自分类Dev

从文本文件的每一行中删除第一个字符

来自分类Dev

搜索文本文件的特定行,最多替换一个字符

来自分类Dev

向文本文件php中的每一行添加一个字符

来自分类Dev

如何有效地从文本文件的每一行读取第一个字符?

来自分类Dev

如何在某个字符处拆分文本文件以创建多个文本文件

来自分类Dev

计算文本文件中第3列或第4列中的单词超过n个字符的行

来自分类Dev

如何从文本文件中删除第一个字符串和逗号

来自分类Dev

你如何从java中的文本文件创建一个字符串数组列表?

来自分类Dev

如何在文本文件中搜索两个字符串并对使用批处理脚本找到的两个字符串中的任何一个进行操作

来自分类Dev

如何从文本文件的一行中删除两个字符之间的空格

Related 相关文章

  1. 1

    仅显示文本文件中特定行的前36个字符

  2. 2

    如何使用vi删除文本文件中每行的前5个字符?

  3. 3

    将行从1个文本文件写入新文本文件,不包括前18个字符

  4. 4

    如何按第一个单词对文本文件的行进行排序?

  5. 5

    删除文本文件中每行的前10个字符

  6. 6

    从文本文件中获取一行的前n个字符?

  7. 7

    如何使用C#在文本文件行中逐个字符地读取

  8. 8

    如何使用PHP按每行中的第二个索引对文本文件进行排序

  9. 9

    如何从文本文件中按顺序或控制方式提取2个字符串之间的特定数据如果满足多个这样的实例

  10. 10

    使用批处理脚本解析文本文件,并从每行中删除前2个字符

  11. 11

    C#如何从文本文件中删除最后2个字符并在我的文本末尾写入同一行?

  12. 12

    如何根据第二个文本文件对文本文件中的行进行排序

  13. 13

    在同时对文本文件进行某些操作之后,如何删除该文本文件中的特定行

  14. 14

    如何按列对文本文件进行排序并保持原始顺序

  15. 15

    如何在python中按降序对文本文件进行排序?

  16. 16

    如何使用gedit按字母顺序对文本文件中的行进行排序

  17. 17

    如何在 PHP 中按名字对文本文件内容进行排序?

  18. 18

    如何读取具有特定单词的文本文件的行到数组,并获取该数组中最后一行的前四个字符?

  19. 19

    文本文件包含1或2或3个字符串,后跟双精度字。如何读取字符串?(每行开头都有1或2或3个字符串)

  20. 20

    从文本文件的每一行中删除第一个字符

  21. 21

    搜索文本文件的特定行,最多替换一个字符

  22. 22

    向文本文件php中的每一行添加一个字符

  23. 23

    如何有效地从文本文件的每一行读取第一个字符?

  24. 24

    如何在某个字符处拆分文本文件以创建多个文本文件

  25. 25

    计算文本文件中第3列或第4列中的单词超过n个字符的行

  26. 26

    如何从文本文件中删除第一个字符串和逗号

  27. 27

    你如何从java中的文本文件创建一个字符串数组列表?

  28. 28

    如何在文本文件中搜索两个字符串并对使用批处理脚本找到的两个字符串中的任何一个进行操作

  29. 29

    如何从文本文件的一行中删除两个字符之间的空格

热门标签

归档