现有数据为这
1,2,11,"MiWiFi-R4AC|百兆双频|小米|R4AC|小米,FW325R|百兆单频|迅捷|FW325R|迅捷,device_12|百兆单频|MERCURY|device_12|MERCURY,FIR302C|百兆单频|斐讯|FIR302C|斐讯,TL-WR886N|百兆单频|TPLINK|TL-WR886N|TPLINK,TL-WR890N|百兆单频|TPLINK|TL-WR890N|TPLINK,MW310R|百兆双频|水星|MW310R|水星,TL-WDR5620|百兆双频|TP-LINK|TL-WDR5620|TP-LINK,MW313R|百兆双频|水星|MW313R|水星,TL-WR842N|百兆单频|TPLINK|TL-WR842N|TPLINK,MiWiFi-R4CM|百兆单频|小米|小米4C|小米,MW325R|百兆单频|水星|MW325R|水星,MW155R|百兆双频|水星|MW155R|水星,MW150R|百兆双频|水星|MW150R|水星"
需要将后半部分,全部拆分成列。首先读取文件,由于文件比较大。
tempData=pd.read_csv(filName,low_memory=False,compression='gzip')
读取压缩文件,至于为什么加low_memory=False 后面了再说。
先确定文件列名称:
读取完之后 至于分多少列 文件中第三个字段是有多少组数据,
那么 截取三个字段的值
maxColumns=tenpData.iloc[0,2]
按照文件具体名称生成文件列名称
strChar=u"路由器"
strSourceColumn=u"名称,类型,品牌,型号,厂家"
coloumnlist=strSourceColumn.split(",");
for i in

博客内容讲述了如何处理一个包含设备信息的数据文件,特别是如何使用pandas将数据的后半部分拆分为多个列。在读取大文件时,由于文件类型和数据混合,需要设置low_memory=False来避免DtypeWarning。博主确定了列名,并根据文件中的第三字段值来决定拆分的列数。数据中每组信息由逗号和竖线分隔,博主完成了数据预处理的基本步骤。
最低0.47元/天 解锁文章
3794

被折叠的 条评论
为什么被折叠?



