Python中用append()連接后多出一列Unnamed的解決
Python append()連接后多出一列Unnamed問題
pandas用append連接2個(gè)dataframe,總是多出一列Unnamed:
Unnamed: 0 candle_begin_time ? ? ?
0 0.0 2019-01-01 00:00:00
1 1.0 2019-01-01 00:05:00
2 2.0 2019-01-01 00:10:00
3 3.0 2019-01-01 00:15:00
4 4.0 2019-01-01 00:20:00
注意到append連接的2個(gè)dataframe,前者是通過read_csv()函數(shù)從本地csv文件讀取
后者是通過網(wǎng)站接口直接取數(shù)。
read_csv()函數(shù)讀取csv文件后,需要指定一列為index
第一列不會(huì)默認(rèn)為index,而直接認(rèn)為是正常數(shù)值
該列通過append連接時(shí)與接口取數(shù)結(jié)構(gòu)匹配不上,會(huì)新增一列unnamed用于存儲(chǔ)csv中序號(hào)列
解決辦法
read_csv()函數(shù)讀取數(shù)據(jù)時(shí), 使用index_col參數(shù),明確指定index行。
如:
df = pd.read_csv(filename,index_col=0) #指定csv中第一列為index
Python對(duì)于append()的錯(cuò)誤理解
在對(duì)于Python的列表學(xué)習(xí)階段,對(duì)append()函數(shù)的理解出現(xiàn)問題,現(xiàn)記錄如下:
我原以為:
t = [] t.append([])
結(jié)果t應(yīng)該是[],[];但正確結(jié)果卻是[[]]。
append()函數(shù)的作用是將 x 元素添加到 s 列表的末尾。如果按照字面意思理解,確實(shí)是應(yīng)該將[]的空內(nèi)容加到空列表的末尾。但是我仍然沒有理解清楚空列表的含義,是不包含任何內(nèi)容的。如果我認(rèn)為空列表的含義是,有一個(gè)空的字符在里面,那么t[0]就表示空字符,這顯然是不符合規(guī)則的。
所以對(duì)空列表[]進(jìn)行append([])操作,是像其中內(nèi)嵌一個(gè)空列表,形成二維度的列表。那么對(duì)于[[]]就不是一個(gè)空列表了,它的第一個(gè)元素t[0]為[]。
此時(shí),如果我像[[]]執(zhí)行append([]),才會(huì)成為[[], []]。
如果我希望在二維空列表上形成三維列表甚至更多維度。就需要在每層的最外層維度的第一個(gè)元素使用append()函數(shù)。
例如對(duì)于t = [[]]二維形成三維:
t = [[]] t[0].append([])
這時(shí)t即為[[[]]]。
總結(jié)
遇到這種問題,上手實(shí)操一下,很容易就理解了。只靠腦子想,永遠(yuǎn)不知道怎么回事,畢竟計(jì)算機(jī)的語(yǔ)言是寫好的嘛,它總不會(huì)錯(cuò)的······
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python利用memory_profiler查看內(nèi)存占用情況
memory_profiler是第三方模塊,用于監(jiān)視進(jìn)程的內(nèi)存消耗以及python程序內(nèi)存消耗的逐行分析。本文將利用memory_profiler查看代碼運(yùn)行占用內(nèi)存情況,感興趣的可以了解一下2022-06-06基于Python 中函數(shù)的 收集參數(shù) 機(jī)制
今天小編就為大家分享一篇基于Python 中函數(shù)的 收集參數(shù) 機(jī)制,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-12-12Python中創(chuàng)建對(duì)象列表的實(shí)現(xiàn)示例
本文主要介紹了Python中創(chuàng)建對(duì)象列表的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03python2利用wxpython生成投影界面工具的圖文詳解
這篇文章主要介紹了python2利用wxpython生成投影界面工具的圖文詳解,本文通過實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04python創(chuàng)建學(xué)生管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了python創(chuàng)建學(xué)生管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11