簡體   English   中英

您如何處理處理表中的不完整數據?

[英]How do you handle incomplete data in a Processing table?

我正在使用Processing的Table界面解析CSV,但是某些行缺少一些數據。 我想將所有可用數據拉到表中,但是我不確定如何處理丟失的數據-當我使用缺失值的dataTable.getInt遍歷表時,我不斷收到NullPointerException

我沒有使用靜態類型語言的背景知識,所以我不知道如何有條件地分配此數據,而不必在每個分配周圍放置單獨的try / catch 當然有更好的方法嗎?

在調用dataTable.getInt方法之前,請檢查dataTable是否不為null,例如

if(dataTable != null) {
    int my_nt = dataTable.getInt

}
//else skip since it is empty

由於您使用的是getInt,因此您應該regex search/replace ,<not numeric>, with ,<some int>,進行regex search/replace ,<not numeric>, with ,<some int>, 就您而言,可能很簡單,只需將,,替換為,0,

同樣,如Hassan所建議的,請仔細檢查dataTable是否不為null。

好的,所以我想出了一種方法來做到這一點:

首先,調用dataTable.makeNullEmpty() ,它將所有空值轉換為空字符串。

然后,您可以使用以下模式:

String total_value = dataTable.getString(i, 4);
if(total_value.length() > 0) s.total_value = parseInt(total_value);

並且只有在要解析一個int的情況下,您才能獲得分配。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM