| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3243 人关注过本帖, 1 人收藏
标题:CSV合并的问题
取消只看楼主 加入收藏
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
可能AAAA用EXCEL看會比較清楚一點
有些逗號是為了排格式
0000是項次的資料
其他都是資料

AAAA看橫的,一整排是為一組。ID代表顆數累計。Contact是每次讀出幾顆的意思(所以不是每次的數量都會一樣)
唯獨
Test#,Test name,Type,Low Limit,High Limit,Unit,MAX,MIN,AVG,STDEV,Cpk/PF,
這行是標示該行以下各項次的相關資料型態

這檔案最終會被轉成XLSX檔,如圖:https://bbs.bccn.net/thread-441645-1-1.html
我不知道要怎麼說明,簡單說這是某片WAFER的測試資料清單

原檔是二進制的,被我轉成CSV。而且這是很小的檔案,ID只到800多,但是程式要能做到90000,
這後製在VB處理EXCEL部分可能還得寫分頁處理。不過一步一步來。

不要選我當版主
2015-03-09 22:37
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
以下是引用TonyDeng在2015-3-9 22:36:55的发言:

不要理23樓的問題,回到22樓。在0001中,最後一行是803行,也就是說,在這個文檔中拼出來的數據,在對應的列中,打803行後面,應是空的,而你的AAAA,在803後面(對應的列)是有數據的,那應該是把別的文檔錯位列拼到這裏來的吧?


第一次給的壓縮檔在0000有少幾比資料,要試要拿第二次給的壓縮檔,我有修改過程式的前段讓輸出變正常。

不要選我當版主
2015-03-09 22:40
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
用純文字看會比較痛苦一點,不過我現在電腦沒EXCEL,將就一點,拼出來大概是這樣
图片附件: 游客没有浏览图片的权限,请 登录注册

不要選我當版主
2015-03-09 22:44
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
以下是引用TonyDeng在2015-3-9 22:41:40的发言:

看25樓的補充,我用的就是第二次的數據。


恩,是啊,一整個橫列都是同一型態就沒錯了,直列型態一定不會一樣,
因為有分DC和AC的測項,有些是電壓資料有些是電流資料有些是頻率資料,
也有些是機台運行中內存裡暫存器的值被導出來,可以想像是可在運行中偵錯的意思。

不要選我當版主
2015-03-09 22:50
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
以下是引用TonyDeng在2015-3-9 22:45:35的发言:

我把Excel看到的圖補在25樓了,你看看。我之前說麻煩在列的分佈和次序、以及記錄數不一致,就是指這種錯位的預感。這麽一錯位,我們是不知道從哪個文檔開始錯的,又是把哪個拼上去的,拼到哪也是不知道的。不能這樣拼的吧?


順序的問題我在輸出CSV前就已經先處裡好了,只要拼起來,大致看一下(因為我大概看得懂),就知道有沒有問題了。

不要選我當版主
2015-03-09 22:52
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
以下是引用TonyDeng在2015-3-9 22:36:55的发言:

不要理23樓的問題,回到22樓。在0001中,最後一行是803行,也就是說,在這個文檔中拼出來的數據,在對應的列中,打803行後面,應是空的,而你的AAAA,在803後面(對應的列)是有數據的,那應該是把別的文檔錯位列拼到這裏來的吧?

你留意一下,我剛用Excel看的AAAA.csv:從529行開始,L列的數據,從浮點數變成了整數,這是對的?


而且也要看同一橫排左邊的TYPE,P的話大概往右看整排都會是浮點數或整數,F的話就不一定了,128和0和空白各代表不同意義。並不是拼錯。

不要選我當版主
2015-03-09 22:56
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
被你嚇到~特地開WIN7用EXCEL來看~沒對錯阿?
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册

不要選我當版主
2015-03-09 23:20
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
以下是引用TonyDeng在2015-3-9 23:14:33的发言:

我現在基本明白你的意圖了,但要處理正確才行。考慮到將來的數據量,用數據庫處理是最好的。如果非要用C/C++做,要弄點處理技巧,(最終數據)肯定不能全放在內存中,必須逐行寫。我現在又要外出,想想怎麽做,回來再試寫一下。


.....這麼晚還外出~真辛苦~

這隻程式是第三版了~第一版是用VB寫的~實在太慢~
第二版是全部在內存中處理後一次輸出的~出現內存資料被異常覆蓋問題~
第三版我改成Contact幾次就出幾個CSV檔案~大幅降低內存使用量~
以時間換取空間~使用類似暫存檔案方式組合出一個完整檔案~

數據庫...因為不會用~所以只好用C囉....

不要選我當版主
2015-03-09 23:25
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
現在才看到,可惜我已經下班了,不然直接把檔案資料轉成EXCEL貼上來,應該會比較清楚一點,
嚴格說CSV要是有錯位狀況的話,最終在EXCEL檔內可以很清楚看得到,不過你既然一直說異常,
就一直讓我心裡毛毛的。今天我又補上0000的最大值和最小值和平均值的欄位計算資料,
之前都是空的因為還沒弄上去,其他還有平均標準差和良率的計算,那公式蠻複雜的,再考慮是否改用VBA去做。

的話感覺和C差不多(用轉工程的情況下),不像VB和差別天差地遠。
另一帖其實我只是想確認是我程式的問題,還是那只是原本編譯器上的既有先天限制。

唯一確定的是Windows系統下料夾中的檔案數量有其上限,太多會導致開啟資料夾異常。
不過這又是更後面再來考慮的了。

不要選我當版主
2015-03-10 21:06
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 

從註冊到現在,來這這麼久,第一次有人幫寫程式給我耶,好緊張喔。

嚴格說VB版的以前某板主有給過一次。C版是第一次。

[ 本帖最后由 wube 于 2015-3-10 21:20 编辑 ]

不要選我當版主
2015-03-10 21:18
快速回复:CSV合并的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023683 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved