datadf型別:list中包含若干個dataframe,由於每個dataframe都很大,現在需要把每個dataframe分別儲存成乙個csv方便讀取
嘗試1:
為了省記憶體,把每個dataframe轉換成str格式進行儲存
開啟strline.csv檔案file
=open
('./temp_diff/strline.csv'
,'w'
)for fp in datadf:
file
.write(
str(fp)
)file
.write(
'\n'
)file
.close(
)
嘗試2:
list轉換成陣列,然後存成npy,報錯memoryerror,可能是需要很大的記憶體
嘗試3:
每個dataframe直接存為csv檔案,由於dataframe的資料型別預設為float,精度太高,所以儲存時十分耗記憶體,速度也是十分慢
嘗試4:dataframe中的資料只保留兩位小數
for i,df in
enumerate
(datadf)
: f=
lambda x:
'%.2f'
%x ####(由於dataframe預設為float型別,儲存時十分浪費記憶體,所以將其保留兩位小數)
其中unnamed:0 列為原先每個dataframe中的index,只需要 data.drop(["『unnamed: 0』"],axis=1),即可去除這一列
DataFrame按多個條件刪除行
data.drop index data data 公司縮寫 row 1 data 發布時間 row 2 data 文章綜合情感 row 3 index for row in merge data12.itertuples 迴圈titledata每一行 a row 1 split print mer...
多個dataframe的列合併與行合併
將多個資料表,以時間為索引,並選取需要分析的列進行合併。在本文中,拿到的資料是同一時期的不同裝置的特徵資料,需要提取對應的列進行時間合併,在合併過程中存在以下問題 1 時間索引存在重複,需要刪除重複項,否則合併時會報錯 2 每個表中需要提取的列名稱一樣,需要在合併前進行重新命名,否則合併後就無法區分...
合併 多個dataframe 第五章 合併
a 利用series新增行 必須指定name s pd.series name new row b 用dataframe新增表 df temp pd.dataframe index new 1 new 2 此方法主要用於新增列,列名直接由引數指定 s pd.series list abcd inde...