当前位置:首页 > 人工智能

领导给了一堆无序杂乱的数据,我写了个Python自动化脚本

这个问题算是领导群友答疑。如果说同事或者老板给你一堆这样的堆个数据,你估计会抓狂,无序该怎么处理呢?杂乱n自

仔细观察上面数据可以发现,该数据有如下2个主要特点:

每一行的数动化数据长度不同。第一行和第三行有4个属性,据写脚本第二行有5个属性。领导 不同行的堆个属性值,并不是无序对应排列。

解题思路剖析

你可能会想,杂乱n自直接用Excel分裂。数动化其实并不可行,据写脚本因为不同行的领导属性值,香港云服务器并不是堆个对应排列。Excel分列导致的无序结果就是:不同的属性,存在于相同的行。

放弃Excel那条路之后,我就只能寻求Python的帮助了。我们要根据数据的特点,选择合适的数据存储方法。最终问题就转化为:构造数据源,然后创建DataFrame即可。

然后根据我们这个数据的服务器租用特点,我选择构造字典组成的列表这样一个数据,并利用它来创建DataFrame。

观察我提供的这个案例和待解决的问题,简直异曲同工。我们同样可以将上述数据的每一行,都变成一个个键值对组成的字典。然后最外层用一个大列表,将所有的字典包含起来。

完整代码

1)首先需要构造练习数据

import pandas as pd x = { "信息":["年龄:12;性别:女;身高:22;爱好:打球",              "年龄:12;说明:历史数据;性别:女;身高:22;爱好:打球",              "生日:2月3日;年龄:12;性别:女;爱好:打球"]     } df = pd.DataFrame(x) df 

结果如下:

2)构造字典组成的列表

tmps_list = [] for data in df["信息"].values:     tmp_dict = { }     for kv in data.split(";"):         k, v = kv.split(":")         tmp_dict[k] = v     tmps_list.append(tmp_dict) tmps 

结果如下:

3)创建DataFrame

df = pd.DataFrame(tmps) df 

结果如下:

分享到:

滇ICP备2023006006号-16