问题标签 [data-cleaning]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
7570 浏览

python - 仅在 Pandas 中转换为年份的 Python 清理日期

我有一个大型数据集,一些用户将数据放在 csv 中。我将 CSV 转换为带有panda. 该列有超过 1000 个条目,这里是一个示例

然后我尝试使用将日期转换为年份

但它给了我一个错误:

使用日期时间64

它给了:

由于该列是用户填写的,因此大多数格式为 MM/DD/YYYY,但有些数据是这样输入的:2013 年 2 月 10 日,有一个像 00/00/0000 这样的条目。我猜不同的格式搞砸了处理。

有没有try loop, if statement, 或者我可以跳过这些问题的东西?

如果日期时间失败,我将被迫使用str.extract同样有效的脚本:

concat用来取出一年。

错误df['year']=pd.to_datetime(df['datestart'],coerce=True, errors ='ignore').astype('datetime64[Y]')消息是:

0 投票
2 回答
55 浏览

r - 在R中加载包含无用字符的数据框

我有一个可执行文件,每次被 R 调用时都会输出一个表。然后我想在 R 中加载数据帧,但它包含很多“!”,例如:

这样我得到:

我需要或多或少地每秒读取一次 R 中的数据,所以有没有一种快速的方法来删除那些“!” ? 我在 Windows 中工作。谢谢!

0 投票
1 回答
1133 浏览

r - 根据定义的连续观察次数,在 R 中的面板数据中删除变量

我对 R 很陌生,我的问题如下:

我有一组像这样按时间序列组织的面板数据(仅显示部分):

例如,使用 B 组是没有意义的,因为有太多的观察缺失。排名系统不提供排名低于 40 的数据。所以我想通过删除没有至少 8 周连续观察的列(变量)来清理(例如本例中的团队 A、B 和 D)。因此 D 不符合要求,因为从 2010-02-20 开始的一周有间隔。请记住,我有超过 1000 列。

我以前试过这个,但它没有给我想要的东西,不幸的是我不够熟练,无法修改代码以满足我的需要。

我能想到的一些可能的解决方案:

  1. 子集每个变量的具有 8 个或更多连续观测值的部分

  2. 如果连续运行 8 个 obs 包含 NA,则设置观察值 = NA,然后删除只有 NA 的列,因为不满足最少 8 周要求的列将只有 NA 值(我希望你明白我的意思)

只是出于兴趣,如果数据以长格式组织,做同样的事情会更困难吗?

有什么建议么?

0 投票
2 回答
146 浏览

linux - 识别 Web 服务器上未使用的文件

如何确定哪些文件可以安全删除以及哪些文件需要保留?

运行 STAT 后,截至昨天所有文件都已被访问,但有许多文件实际上已多年未使用。

哪种方法最适合确定哪些文件适合?

也许使用 PHP 创建一个如何调用/引用所有文件的层次结构列表?不幸的是,访问日期全部搞砸了,我不能将其用作决定因素,但我想我也可以包括修改/更改日期。

有人有这方面的经验吗?

0 投票
1 回答
75 浏览

sql-server - 映射来自多个供应商的财务数据以匹配内部格式和命名约定

我有一个担心,我认为这可能是档案的一个很好的主题,因为我想很多人在他们的职业生涯中可能会遇到类似的问题。我正在寻找关于将多个供应商之间的数据映射到标准格式的任何/所有建议、想法和评论。

我的故事:

目前,我收到两种不同类别的数据(又名“常量”和“变量”)。包含过多的财务信息[即。贷款、利率、抵押贷款、地址等...]。每个供应商都有自己的格式风格和命名约定,与我自己的不同。

集 1) 常量集:每天包含来自不同供应商的大约 25 个 CSV 文件。每个供应商的数据都有不同的名称(列标题),但是他们的数据格式与我的相似。

设置 2) 变量集:包含大约 20 个文件,尽管它们的格式和标题几乎总是唯一的(即我有一个名为“贷款利率”的数据集,我的供应商称之为“利率”、“LnRt”、“rT ”、“PxrT”等。)。因此我需要浏览每个文件,首先清理数据的格式(正确的大小写格式,将名称解析为不同的列,转换日期/时间格式等)然后重新标记所有内容。

我目前清理数据的方法是在 Excel 中使用“上传模板”。在我清理了所有数据的格式后,我将供应商文件中的值复制到我的模板中。然后我将模板中的数据加载到临时文件中。SQL 服务器上的表(暂存表)。随后运行一些 SQL 脚本,将值插入到数据库 (DB) 中的适当位置。

正如您可能想象的那样,整个过程非常繁琐耗时 - 继续手动执行此操作不再是真正的选择。

关于我的问题:

1)你做过这样的事情吗?如果是这样,你是怎么做的?

2)任何想法如何根据另一张表中的名称列表快速更改列名(标题)?

3) 您对如何改进流程有什么建议吗?

4)你知道任何可以自动化这个过程的软件吗?

0 投票
4 回答
311 浏览

sql-server - 如何从作为另一个字符串的子字符串的括号中删除尾随空格

我正在使用 SQL,一些列值表示为{3P Test } * 1 + 0.45%.

在这里,我在Test之后有尾随空格,我想将其更新为{3P Test} * 1 + 0.45%. 如何更新该列以删除括号中的尾随空格?

0 投票
4 回答
1147 浏览

bash - 使用 awk 或 sed 进行数据清理和格式化

这是我的文本文件的摘录

我正在尝试格式化并清理它,将其保留在第一列和日期。但是,如您所见,最后一行是 10。我无法删除它,因为如果我这样做,日期sei_bsco_m将被截肢。

任何帮助,将不胜感激。

注意代码在这里https://ideone.com/JbuRHK

期望的输出是:

0 投票
1 回答
398 浏览

r - 删除与值匹配的行

我正在尝试过滤掉一些数据。假设列包含一个数值,如果在所有列中都等于零,则该数值必须消失。我虽然关于执行多个匹配,所以

但它显然不起作用,因为它给出了最后一个向量的位置......数据看起来像这样:

我有兴趣匹配删除所有为 0 的 INJURIES、FATALITIES、CROPDMG、PROPDMG 条目(所有这些条目同时)。我已经用 complete.cases() 过滤掉了 NA。谢谢

0 投票
1 回答
9763 浏览

python - 在 Pandas 数据框中组合行(在某个条件下)

我有一个数据框(df)(最初来自一个 excel 文件),前 9 行是这样的:

  • 类型(df['Control'][1])=float;
  • 类型(df['Recd_Date/Due_Date'][1])=datetime.datetime;
  • 类型(df['Action_Office'][1])=浮动;
  • 类型(df['签名/请求者'][1])=unicode

我想将此数据框(例如前 9 行)转换为:

所以基本上:

  • 每次 pd.isnull(row['Control']) (这应该是唯一的 if 条件)为真时,然后将此行与前一行(其 'control' 值不为空)合并。
  • 对于'Recd_Date/Due_Date'和'Signature/Requester',在每两个值之间添加','(或'/')(来自两个合并的行)(例如'2000-01-31 00:00:00,2000- 02-29 00:00:00'和'G KAN,掌上邮报')
  • 对于“Action”,只需合并它们而不添加任何标点符号(例如 FDA/OGROP/ORA/CE-FO/CHI-DO/CHI-CB/)

任何人都可以帮我吗?这是我试图让它工作的代码:

为什么 drop() 不起作用?我正在尝试删除当前行(如果其 ['Control_#'] 为空),因此可以将下一行(其 ['Control_#'] 为空)添加到上一行(其 ['Control_#'] 为NOT null) 迭代..

非常感激!!

0 投票
3 回答
28100 浏览

stata - 如何删除Stata中没有数据的观察?

我有带有 ID 的数据,这些数据可能存在也可能不存在所有值。我只想删除没有数据的观察;如果有一个值的观察值,我想保留它们。例如,如果我的数据集是:

我只想删除 ID 2,因为它是唯一一个没有数据的——只是一个 ID。

我尝试过 Statalist 和 Google,但找不到任何相关内容。