跳转到内容
View in the app

A better way to browse. Learn more.

彼岸论坛

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
欢迎抵达彼岸 彼岸花开 此处谁在 -彼岸论坛

[问与答] 求问数据清洗的简易方法

发表于
数据量在亿级别,主要清洗需求包括对特定字段去空格、统一日期格式、计算日期差、特定数值求和(数值都在行中)、查对字典得到对应值等等。需求虽然五花八门,好在所需的数据都在同一行,不需要进行聚合,也不会跨行查询。不过如遇到无法处理的数据需要及时找到并剔除,反馈并等待重新收集。这种情况需要进行语言交流和重传数据,所以会耗费一定时间。
目前的方法是导入 PostgreSQL 进行清洗,遇到不容易通过 SQL 实现的逻辑,比如统一日期格式,使用 C#编写了程序去处理。曾尝试使用 pandas 处理,但数据量太大无法载入内存遂放弃。

目前想要解决的问题是:
- 剔除问题数据后,获取到修复的数据,为了防止混乱,我会把每次新获得的数据存在新表中单独再清洗一遍。但是清洗流程太多(有很多 SQL 语句,因为一条 SQL 只能清洗一列,列很多,还有 C#处理的部分),数据问题反馈后还有问题也是常见情况,数据库中就会有大量的表,虽然有做视图,但也大大增加了管理压力。尽管如此我也不想把各数据全部整理在一张表,总是会害怕越整越乱。
- 因为不需要对数据进行聚合,也不会跨行查数,如果顺应人脑的思维逻辑的话,就是对每行的各个列字段应用特定的方法,然后逐行执行就可以。这样还可以多线程执行以及查看进度。遇到出问题的行也可以快速定位到。当然这个不是必要的,但我感觉会比数据库要简单直观。

想问下各位前辈遇到这种情况一般如何处理?有没有比较合适的软件可以使用?

Featured Replies

No posts to show

创建帐户或登录来提出意见

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.