<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
本專案可以按照比例將一個csv檔案分割成兩個csv檔案,效果是:在C:algo_file資料夾下,將該資料夾下的data.csv檔案分成train.csv和vali.csv
完整程式碼:
import csv import os def split_csv(path, total_len, per): # 如果train.csv和vali.csv存在就刪除 if os.path.exists('C:\algo_file\train.csv'): os.remove('C:\algo_file\train.csv') if os.path.exists('C:\algo_file\vali.csv'): os.remove('C:\algo_file\vali.csv') with open(path, 'r', newline='') as file: csvreader = csv.reader(file) i = 0 for row in csvreader: if i < round(total_len * per/100): # train.csv存放路徑 csv_path = os.path.join("C:\algo_file", 'train.csv') print(csv_path) # 不存在此檔案的時候,就建立 if not os.path.exists(csv_path): with open(csv_path, 'w', newline='') as file: csvwriter = csv.writer(file) csvwriter.writerow(row) i += 1 # 存在的時候就往裡面新增 else: with open(csv_path, 'a', newline='') as file: csvwriter = csv.writer(file) csvwriter.writerow(row) i += 1 elif (i >= round(total_len * per/100)) and (i < total_len): # vali.csv存放路徑 csv_path = os.path.join("C:\algo_file", 'vali.csv') print(csv_path) # 不存在此檔案的時候,就建立 if not os.path.exists(csv_path): with open(csv_path, 'w', newline='') as file: csvwriter = csv.writer(file) csvwriter.writerow(row) i += 1 # 存在的時候就往裡面新增 else: with open(csv_path, 'a', newline='') as file: csvwriter = csv.writer(file) csvwriter.writerow(row) i += 1 else: break print("訓練集和驗證集分離成功") return
if __name__ == '__main__': path = 'C:\algo_file\data.csv' total_len = len(open(path, 'r').readlines())# csv檔案行數 per = 80 # 分割比例% split_csv(path, total_len, per)
按照訓練集佔80%(驗證集20%)比例,對C:algo_file資料夾下的data.csv進行分割,在該檔案下得到train.csv 和 vali.csv。
最後
本專案只是以C:algo_file資料夾為例,實際上data.csv所在路徑,train.csv所在路徑,vali.csv所在路徑包括檔名都可以更改。
專案中有一個資料檔案數量龐大,一個檔案中按照年月日分成幾十萬條資料,想試試能不能用python把它簡單切割一下,按照日期分類切成小的csv檔案。
於是在網上找了很多資料,結合自己的一些修改,整理了一下,方便以後再用。
1、讀取檔案
2、找出需要分類的列
3、將此列中重複的內容刪除,每類剩餘一條
4、把該列所有符合某一類的內容存入一個csv檔案中
import pandas as pd # 讀取檔案資料 df=pd.read_csv('D:\接收的檔案\lqf.csv', sep=',',engine='python',header=[0]) # 列csv檔案中所有列 df.columns = ['year', 'date', 'statefips', 'countyfips', 'ctfips', 'latitude', 'longitude', 'DS_PM_pred', 'DS_PM_stdd'] # 刪除date列中的重複項,也就是說剩下的date都是已經分好的類別 date_cate = df.drop_duplicates(subset=['date']) print(date_cate.date) print(range(len(date_cate))) # date中的所有類,也就是檔案數 for name in date_cate.date: print(name) # 當date為某一個類時,存入一個小的csv檔案中,檔名為類名 df[df.date == name].to_csv("D:\接收的檔案\data\"+u"%s" %name+".csv")
header=[0] #代表第一行為表頭不計入其中,可根據表格修改。
!!!!!!(2)!!!!!!遍歷資料夾中所有的檔案然後進行切割,沒啥用,自己做個存檔而已 ↓↓↓↓↓
import pandas as pd import os j = 347 for info in os.listdir('D:\接收的檔案year_02'): domain = os.path.abspath(r'D:\接收的檔案year_02') # 獲取資料夾的路徑 info = os.path.join(domain, info) # 將路徑與檔名結合起來就是每個檔案的完整路徑 # 讀取檔案資料 df = pd.read_csv(info, sep=',', engine='python', header=[0]) # 列csv檔案中所有列 df.columns = ['year', 'date', 'statefips', 'countyfips', 'ctfips', 'latitude', 'longitude', 'DS_PM_pred', 'DS_PM_stdd'] grouped = df.groupby('date') # delete duplicated data ind_frame = df.drop_duplicates(subset=['date']) # print(ind_frame.date) # print(range(len(ind_frame))) for name in ind_frame.date: # print(name) j += 1 print("已經掃描到第" + '{}'.format(j)+'個檔案') df[df.date == name].to_csv("D:\接收的檔案\data2\" + u"%s" %name+".csv")
以上為個人經驗,希望能給大家一個參考,也希望大家多多支援it145.com。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45