将文本输入滑动窗口并进行计数

2024-04-05

我有这样的文件(超过 1 个缺少行)

 20     14370   rs6054257 G      A       29   PASS   NS=3;DP=14;AF=0.5;DB;H2           GT:GQ:DP:HQ 0|0:48:1:51,51 
 20     17330   .         T      A       3    q10    NS=3;DP=11;AF=0.017               GT:GQ:DP:HQ 0|0:49:3:58,50 
 20     1110696 rs6040355 A      G,T     67   PASS   NS=2;DP=10;AF=0.333,0.667;AA=T;DB GT:GQ:DP:HQ 0|0:21:6:23,27
 20     1230237 .         T      .       47   PASS   NS=3;DP=13;AA=T                   GT:GQ:DP:HQ 0|0:54:7:56,60
 20     1234567           GTC    G,GTCT  50   PASS   NS=3;DP=9;AA=G                    GT:GQ:DP    0/1:35:4

我需要分割为滑动窗口并像这样计算“0/0”位置

 Pos     Count 
 1-10001  0
 2-10002  1
 3-10003  0

为了计算每 10000 个位置,我使用了这个 cmd

tail -n +11 file | 
awk -v n=10000 '/0\/0/{c++} NR%n==0{print c; c=0} END {if (NR%n!=0) print c}'

第一个解决方案:完全基于您所展示的尝试,用 GNU 编写awk。由于样本中没有 0/0 值,因此无法进行太多测试,应该可以通过。采取tail来自OP尝试本身的命令。

tail -n +11 Input_file | 
awk -v n="10000" '
  NR%n==0{
    ++occur
    print n+occur,count
    count=""
  }
  /0\/0/{
    count++
  }
  END{
    ++occur
    if(count){ print n+occur }
  }
'


第二个解决方案:如果您多次出现以下情况0/0在你的行中,并且你想计算每行中的所有内容,然后尝试遵循与第一个解决方案略有不同的方法。

tail -n +11 Input_file | 
awk -v n="10000" '
  NR%n==0{
    ++occur
    print n+occur,count
    count=""
  }
  {
    count+=gsub(/0\/0/,"&")
  }
  END{
    ++occur
    if(count){ print n+occur }
  }
'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将文本输入滑动窗口并进行计数 的相关文章

随机推荐

  • FBSDKLoginManager logInWithPublishPermissions 始终返回 isCancelled=YES

    我无法弄清楚如何让用户登录我的应用程序 FBSDKAccessToken currentAccessToken 为零 所以我打电话 FBSDKLoginManager alloc init logInWithPublishPermissio
  • 任何自动更新页面所有帖子时间的 jquery 插件

    我有一个页面 其中有很多帖子 显示它们发布的时间 我想每 1 分钟后继续更新该时间 一种简单的方法可以给它们一个相同的类 并在 1 分钟后获取所有元素并更新时间 有什么更好的解决方案 您可以使用像这样的简单插件 fn UpdateSince
  • 基数排序如何工作?

    我不知道为什么这对我来说如此难以理解 我浏览了 wiki 页面和伪代码 以及实际代码 试图了解基数排序算法的工作原理 相对于存储桶 我在这里寻找错误的东西吗 我应该研究桶排序吗 有人能给我一个简化版本的工作原理吗 作为参考 这里是一个代码块
  • 当 ListView 项可见或不可见时获取事件

    我想知道 ListView 中的视图是否有某种 OnVisibilyChangeListener 因为我希望每次 ListView 项更改其可见性时都调用一个方法 我知道 OnPreDrawListener 来检查视图是否可见 但是我如何检
  • 如何在ansible中为变量分配随机数?

    这是一个 ansible 脚本 我希望它能打印出相同的随机数 3 次 相反 它打印出三个随机数 如何将随机数分配给 ansible 中的变量 以便它在整个剧本中固定 name Test random filter hosts localho
  • 为什么“this.setState”不起作用?

    我正在从 API 端点获取 JSON 数据 并希望使用此数据来显示表格 这是我目前正在尝试的 var DeliveryOptionsTHeadTh React createClass render function return th th
  • 焦点问题集中在表单加载上

    我有一个 ActiveX 控件 可能是用 VB 6 0 或 C 编写的 我们在 C WinForms 程序中将其用作 AxInterop 它非常像一个文本框 但具有一些特殊的逻辑等 我们已将其添加到工具栏 当表单加载时 我希望键盘焦点位于该
  • 传输安全已阻止明文 HTTP

    我需要在我的info plist根据以下错误消息启用 HTTP 模式 传输安全已阻止明文 HTTP http 资源 加载 因为它不安全 可以通过以下方式配置临时例外 您应用程序的 Info plist 文件 假设我的域名是example c
  • 从给定日期中提取日、月和年的最快方法是什么?

    我将包含 150 000 行的 csv 文件读取到 pandas 数据框中 该数据框有一个字段 Date 日期为yyyy mm dd格式 我想从中提取月 日和年并将其复制到数据框的列中 Month Day and Year分别 对于几百条记
  • 对 Groupby 组内的 Pandas 数据框数据进行排序

    我有一个大的 pandas 数据框 其结构可以表示为 id date status 0 12 2015 05 01 0 1 12 2015 05 22 1 2 12 2015 05 14 1 3 12 2015 05 06 0 4 45 2
  • 我应该在removeChild之前从元素中删除事件处理程序吗?

    假设我有一个元素 img 并附加了一些事件 例如click 不是内联的onclick somewhere i wrote foo addEventListener click clickHandler false somewhere i w
  • Application Insights 未在 Azure 预览门户中显示数据

    我在 Azure 上有一个现有的 Web 应用程序 其中有一些非常有限的应用程序洞察监控 端点检查 我想我会引入其余的功能 所以我按照以下说明将遥测添加到我的项目中http azure microsoft com en us documen
  • 如何将 Visual Studio 2010 SP1 解决方案转换为 Visual Studio 2012 解决方案? [复制]

    这个问题在这里已经有答案了 我知道它们 大多数项目类型 在 2010 SP1 和 2012 之间是相互兼容的 并且没有必要进行转换 但是如果我仍然需要它怎么办 如果我需要将我的解决方案标记为 Visual Studio 2012 解决方案该
  • 在 Xcode 中使用 git 时 UserInterfaceState.xcuserstate 未提交

    当我尝试提交代码项目时 它显示一个名为 UserInterfaceState xcuserstate 的文件 必须提交该文件 一旦我提交并尝试将我的项目推送到 git Xcode 就会弹出一条消息 提示 工作副本 app 有未提交的更改 当
  • 使用 bxslider 时图像上没有箭头

    我刚刚了解了 bxslider 并通过阅读文档制作了我的第一个幻灯片 但我看不到图像上的左右箭头 因此可以通过单击显示下一张图像如以下示例所示 这个链接 http bxslider com examples image slideshow
  • 我怎样才能为基础 R 做出小小的贡献?

    偶尔我会看到一些可以改进 R 最近是 IQR 命令 和 R 文档 就在本周可能会详细说明aggregate tapply 和 by 之间的差异以及更好地互连 的小方法 但我看不出有什么办法可以真正回报这一贡献 我查看了开发人员网站 似乎我的
  • PHP SQL数据库查询错误信息

    这段SQL代码有什么问题吗 我从教程中得到它 但它返回以下错误消息 数据库查询失败 您有一个 SQL 语法错误 检查 与您的 MySQL 对应的手册 服务器版本的正确语法 在第 1 行 LIMIT 1 附近使用 function get s
  • 使用 python 将 tsv 文件转换为 xls/xlsx

    我想将 tsv 格式的文件转换为 xls xlsx 我尝试使用 os rename sample tsv sample xlsx 但转换后的文件已损坏 还有其他方法吗 这是一个使用 TSV 转换为 XLSX 的简单示例XlsxWriter
  • Android - 使用应用程序上下文创建 WebView 后如何将其附加到 Activity

    我正在使用应用程序上下文在后台创建一个 Android WebView 以便在我需要显示它时加载并准备好它 当需要时 我使用 addView 将其附加到我的 Activity 中 这通常工作得很好 但是当我尝试打开 HTML 选择下拉列表时
  • 将文本输入滑动窗口并进行计数

    我有这样的文件 超过 1 个缺少行 20 14370 rs6054257 G A 29 PASS NS 3 DP 14 AF 0 5 DB H2 GT GQ DP HQ 0 0 48 1 51 51 20 17330 T A 3 q10 N