今天来对上一次爬取的数据进行处理,看看这乱糟糟的数据,什么鬼
1、地址处理
address是这样的,太详细了,哪一弄都标明了,我们主要获取大概的区信息即可;
2、评论数
获取对应的评论条数即可
3、户型
户型包含户型和建筑面积,需要拆分成两个字段
4、价格
价格的信息太任性,抓取了三列信息,price,piece_around,price_txt;
Price不仅有均价还有总价和最低还有无
当price为总价时,我们用总价/面积获取单价;
当price为无时,我们用price_around代替
5、tag标签
一个楼盘对应多个标签,我们首先将tag前后的“,”去掉,将一行的多个标签转化为多行(这些excel公式就不附上了,都是left, mid, search, if函数)
后续我们用VBA将标签进行处理,同样户型也做如下处理
附上代码
Function splitcol(a As Integer, b AsInteger, c As String)
'a对应第几列数进行处理,总共b列数据,c分隔符
Dim arr, brr(), k%, i%, m%, n%, ii%, r%, Tmp
arr = Range("a1").CurrentRegion
Range("a1").CurrentRegion.Select
ReDim brr(1 To 100000, 1 To b)
OnError Resume Next
For k = 1 To UBound(arr)
Tmp = split(arr(k, a), c)
n = 1 + UBound(Tmp)
i = 0
For m = 1 To n
For r = 1 To b
brr(m + ii, r) = arr(k, r)
Next
brr(m + ii, a) = Tmp(i)
i = i + 1
Next m
ii = ii + m - 1
Next k
Range("a1").Resize(UBound(brr), b) = brr
End Function
Sub main()
'对tag进行处理
Call splitcol(9, 10, ",")
'对户型进行处理
Call splitcol(5, 10, "/")
End Sub
经过上述处理,现在看起来舒服多了(其实这才刚刚开始,如果建模后续还需进一步处理)