如何從多個csv文件中計算數據並提取,最終匯總到一個excel表裡?

我有北京市2019年1月1日-12月31日總共365天的涉及日空氣質量數據的csv文檔(共365個獨立的csv文檔,不是sheet1,sheet2,...sheet365),每個csv文檔中包含了某個監測站當天0,1,2,3....21,22,23點總共24個時點的空氣質量(AQI)實時監測值。我需要得到365天每天中該站的AQI均值(每天24個時點監測值的均值)並將其四捨五入。最終,我要將365天每天該站點的AQI均值(經過四捨五入的)按照時間順序匯總在一個excel表格中。

概括地說,我的問題分為兩步:

1.對365個文檔中的24個數據(該站點每天的24個監測值)分別求均值並四捨五入,得到365個數;

2.將上述365個數按照日期順序排列在一個excel文檔中。

備註:

1.我考慮過將上述365個文件進行拼接。已知excel文檔的拼接需要先將csv文檔轉化為xlsx文檔(我用的是excel 2016版,不是WPS),然後將轉化好的xlsx文檔進行拼接。我知道需要使用宏的方法完成上述轉化,但是沒有找到適合我的excel2016版本的代碼,我本身也是計算機白痴。另外,我也不知道將csv文檔轉化為xlsx文檔並進行拼接是否為解決這個問題的好思路。

2.每個csv文檔中有很多信息,我只需要計算我所考慮的站點的24個AQI實時監測值的均值(並四捨五入),且每個文檔中相應的24個數據所在的單元格完全相同,也就是說當我們對365個獨立的文檔分別計算均值時,可以採用完全相同的均值函數。

如下的圖1中顯示了365個文檔,圖2是文檔裡面的樣子,圖3標紅的部分是我需要的24個數據(這裡因為照片大小限制顯示不全了)

跪求大佬指點,越快越好,萬分感激!


用VBA可以做,類似的示例

https://www.bilibili.com/video/BV1qx411g7a9/?

www.bilibili.com


將所有的文件放在同一個文件夾,其內容如下圖

然後新建一個txt文檔,輸入以下內容

copy *.csv summary.csv

保存並退出,並將文件名txt改為bat

點擊並運行bat文件即可

打開確認文件內容


自動化么 vba ,鵝我用Python


你可以使用PowerBI,可以一次導入多個 Excel 或 CSV 文件中的數據,等你整理數據還可以將此類數據以 .xlsx 或 .csv 文件形式導出至 Excel。

在PowerBI中要向現有報表添加更多源,「開始」功能區中選擇「編輯查詢」,然後選擇「新建源」。 可以使用許多 Power BI Desktop 中潛在的數據源,包括文件夾。 通過連接到文件夾,可以一次導入多個 Excel 或 CSV 文件中的數據。

還可以將此類數據以 .xlsx 或 .csv 文件形式導出至 Excel。

導出數據的選項需要 Pro 或 Premium 許可證以及對數據集和報表的編輯許可權。 如果你有權訪問儀錶板或報表,但數據被歸類為「高度機密」,Power BI 將不允許你導出該數據。

  1. 從可視化效果的右上角選擇「更多操作(...)」。

2. 選擇「導出到 .csv」選項。

3. 此時,Power BI 會將數據導出至 .csv 文件。 如果你已篩選可視化效果,則也將篩選 .csv 導出。

4. 你的瀏覽器將提示你保存該文件。 保存後,在 Excel 中打開此 .csv 文件。


power query了解一下


所有的csv 放在一個文件夾里,然後新家一個txt文本,文本中輸入copy *.csv 合併.csv ;

然後把.csv改成.bat,然後雙擊即可


用數據連接的功能,把數據全部匯總在excel表裡


最簡單的是實用python的pandas包,你的要求正是它的初始功能,如果你要長期用,並且格式固定,我可以給你寫個小程序,不過不免費呦。另外,你其實可以上網搜索一下相關代碼,很簡單


推薦閱讀:

TAG:MicrosoftExcel | Excel使用 | 電子表格 |