大家好,我是皮皮。
一、前言
上一篇文章我們使用了Python來實現數據的導入和分列處理,最終可以得到符合預期的結果,不過還可以繼續深挖優化下,這一篇文章一起來看看吧。優化的背景如下圖所示:
二、實現過程
這裏【瑜亮老師】繼續給了一個優化指導,如下圖所示:
並且給出的代碼如下:
with open("./GpsSnr.txt", "r", encoding="utf-8") as f:
txt = f.readlines()
regex =r"\((\d+,\d+\.\d+)\)"
temp = [re.findall(regex, x) for x in txt]
df = pd.DataFrame(temp)
# 這樣保存下來的就是經緯度在一起的
# df.to_excel('GpsSnr1.xlsx', index=False)
# 下面是把經緯度分開
data = []
for i in df.columns:
data.append(df[i].str.split(',', expand=True))
df = pd.concat(data, axis=1)
df.columns = [a+str(b) for a in ['gps','glnoss','beidou'] for b in range(10)]
# print(df.head())
df.to_excel('GpsSnr2.xlsx', index=False)
下圖是部分指導:
順利地解決了粉絲的問題。
其實分成3列更容易進行研究,比如需要對分類爲beidou,經緯度在某個範圍內的數據進行研究,分成3列這種只需要進行簡單的篩選就可以提取出來數據。而分成30列的,就需要對columns進行提取,再處理經緯度,比較麻煩。後來【瑜亮老師】還繼續推演,感興趣的小夥伴們也可以嘗試下哦。
三、總結
大家好,我是皮皮。這篇文章主要盤點了一個Python
自動化辦公的問題,文中針對該問題,給出了具體的解析和代碼實現,幫助粉絲順利解決了問題。
最後感謝粉絲【灰崽】提問,感謝【瑜亮老師】、【王者級混子】給出的思路和代碼解析,感謝【甯同學】、【莫生氣】、【kim】、【🐯厚德載物🍀】、【FANG.J】等人蔘與學習交流。
【提問補充】溫馨提示,大家在羣裏提問的時候。可以注意下面幾點:如果涉及到大文件數據,可以數據脫敏後,發點demo數據來(小文件的意思),然後貼點代碼(可以複製的那種),記得發報錯截圖(截全)。代碼不多的話,直接發代碼文字即可,代碼超過50行這樣的話,發個.py文件就行。