RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-318323

Алексей Чистов's questions

Martin Hope
Алексей Чистов
Asked: 2020-06-18 23:36:29 +0000 UTC

从 bash 日志中解析多行错误

  • 0

我有以下问题作为输入数据文件,格式为

Jun 18 2020 12:46:20 | ERR | XFW | Common:1 | 10 | ORA Error, ORA-03113: end-of-file on communication channel
Process ID: 32759
Session ID: 2291 Serial number: 11145
 while executing "DELETE FROM ATSD_Price WHERE (  ( Table_ID = :1 ) AND ( Entry_ID = :2 ) )" with :1="Scenario157", :2=37879.
Jun 18 2020 12:47:08 | TXT | APP | SG:1 | 9166 | One minute timer - 12:47
Jun 18 2020 12:47:20 | ERR | REFM | Common:1 | 17 | Request is Failed
Jun 18 2020 12:48:07 | TXT | APP | SG:1 | 9166 | One minute timer - 12:48

只应从中选择带有 ERR 标记的行。但有时错误是多行的,就像第一个出现的一样,有时是单行的,就像第二个一样。在一种情况下,我需要将所有错误行扩展为由空格分隔的 1 行,在 2 种情况下只有这一行。所以我想要结束的是:

Jun 18 2020 12:46:20 | ERR | XFW | Common:1 | 10 | ORA Error, ORA-03113: end-of-file on communication channel Process ID: 32759 Session ID: 2291 Serial number: 11145  while executing "DELETE FROM ATSD_Price WHERE (  ( Table_ID = :1 ) AND ( Entry_ID = :2 ) )" with :1="Scenario157", :2=37879.
Jun 18 2020 12:47:20 | ERR | REFM | Common:1 | 17 | Request is Failed

我考虑了 grep -A 4 ERR 文件,然后将行扩展为 1 并切断每行 2 个日期,但我不确定多行错误是否会在 4 行中删除,可能还有更多。我怎样才能做到这一点?提前致谢

grep
  • 1 个回答
  • 10 Views
Martin Hope
Алексей Чистов
Asked: 2020-02-21 03:19:10 +0000 UTC

AWK 使用字符组合作为分隔符

  • 0

我有以下问题作为输入数据文件,格式为

Feb 20 2019 16:35:32 | TXT | APP | SysGuard:1:1:SerLS:1 | 9166 | One minute timer - 16:35

从这里我想得到表格的行

SysGuard:1:1:SerLS:1,One minute timer - 16:35

例如

awk -F"|" '{print $4"|"$6}'

几乎可以满足您的需求,但是前后有空格。

这个选项:

awk -F" | " '{print $4"|"$6}'

将空格和 | 视为分隔符。如何使组合“|”成为分隔符?提前致谢。

awk
  • 2 个回答
  • 10 Views
Martin Hope
Алексей Чистов
Asked: 2020-12-14 21:19:20 +0000 UTC

Pandas 不按照数学规则四舍五入

  • 1

没想到,我遇到了非数学四舍五入的计算。

简单示例

df = pd.DataFrame({'a':[166,34,12,56],
               'b': [27.9625,24.6825,32.738,45.344]})

print df
print (df['a']*df['b'])
print (df['a']*df['b']).round(2)

在输出中我得到:

     a        b
0  166  27.9625
1   34  24.6825
2   12  32.7380
3   56  45.3440
0    4641.775
1     839.205
2     392.856
3    2539.264
dtype: float64
0    4641.77
1     839.20
2     392.86
3    2539.26
dtype: float64

从示例中可以看出,从 5 开始的数字向下舍入,其余的则正确舍入。这是我的问题,如何在数学上对计算结果进行四舍五入?

我有熊猫版本 u'0.23.4',python 版本 2.7.15 |Anaconda, Inc.| (默认,2018 年 5 月 1 日,23:32:55)

python
  • 2 个回答
  • 10 Views
Martin Hope
Алексей Чистов
Asked: 2020-12-06 19:34:37 +0000 UTC

根据另一个 DataFrame 更改 DataFrame 值

  • 2

我有 2 个 dfs:

d1 = pd.DataFrame({
   'ID':['ABC123', 'ABC124', 'ABC125', 'ABC126', 'ABC127', 'ABC128', 'ABC129', 'ABC130', 'ABC131', 'ABC132'],
   'PRICE':[2365.34, 45.37, 225.25, 574.3, 23.34, 7.98, 2353.34, 79.42, 6554.09, 12.45],
   'CUR':['GBp', 'EUR', 'GBP', 'USD', 'SEK', 'CHF', 'GBp', 'CHF', 'GBp', 'CHF']
})

d2 = pd.DataFrame({
   'RECEIVED_CODE':['GBp', 'AUD'], 
   'CONVERTED_CODE':['GBP','USD'], 
   'CONVERSION_RATE':[100, 1]
})

我需要按照以下逻辑替换值:

如果值CUR1 df 与值RECEIVED_CODE2 df 相同,则需要在这一行中将自身的值替换为CUR,CONVERTED_CODE然后PRICE除以CONVERSION_RATE。

编码:

for row in d2.itertuples():
    tmp = d1[d1.CUR == row.RECEIVED_CODE]
    tmp['PRICE'] = tmp['PRICE'] / row.CONVERSION_RATE
    tmp['CUR'] = row.CONVERTED_CODE
    d1.update(tmp)

做它需要的,但是由于 d1 10k 行和 d2 - 10 行的数量,这段代码可以工作几分钟,这很长。

编码

d1['CUR'] = d1.CUR.map(d2.set_index('RECEIVED_CODE').CONVERTED_CODE).fillna(d1.CUR)

可以改成CUR,但是我没有成功CONVERTED_CODE适应这种改法。PRICE

如何优化?

提前致谢。

python
  • 1 个回答
  • 10 Views
Martin Hope
Алексей Чистов
Asked: 2020-12-05 01:44:25 +0000 UTC

合并帧时如何忽略NaN?

  • 1

有 2 个 dfs - 合并发生在 2 列上:1 列始终匹配且不能为空(但可以重复),另外 1 列可以有值,或者可以等于 nan。此外,它既可以在 1 df 中,也可以在另一个中。

我需要按照以下规则将它们相互组合:如果 2 列的当前值为 nan,那么它必须与任何值组合,而不仅仅是 nan,默认情况下。这条规则是双向的。例如 1 df - DB:

在此处输入图像描述

2df - VEN:

在此处输入图像描述

我想得到结果df:

在此处输入图像描述

我可以通过 1 个字段将它们组合起来:

pd.merge(left=DB, right=VEN, how='left',on=['ID'])

但考虑到上述逻辑,我不知道如何通过 2 个字段组合。

python
  • 1 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5