2017-04-14 101 views
0

我有一些代碼從CSV文件中讀取信息。這些信息涉及道路交通事故。使用d3從CSV文件中讀取信息,如何將特定類型的值存儲到變量中?

enter image description here

這樣的代碼,我可以用目標值爲 'd [' 天氣狀況 ']',這給了我 -

enter image description here

這是偉大的!但我實際上想要做的是將特定類型的值存儲在變量中。例如,所有等於「沒有大風的精細」的值都將被存儲在像'var windy'之類的對象中,或者類似的東西,反正我可以簡單地這樣做嗎?

*更新

一些示例數據 enter image description here

任何幫助,將不勝感激。謝謝

+0

你可以添加你的數據看起來像一個樣? – sparta93

+0

Hi @ sparta93,ive在csv中添加了數據的屏幕?夠了嗎? – Treeno1

回答

0

現在,在您的代碼中,您只需打印控制每次遇到數據集時遇到的每種天氣狀況。

如果您想根據天氣情況對數據進行分組,您可以使用d3.nest()

下面的例子使用一些簡單的json數據來展示如何做到這一點。在這裏,使用d3.nest(),我們將關鍵設置爲天氣條件和值作爲對象。

結構後,您的數據進行分組,您可以通過運行下面的腳本檢查: 與rainy所有的事故將根據關鍵rainy與同爲所有其他天氣條件。

var data = [{ 
 
    "Weather Condition": "rainy", 
 
    "property1": "val1", 
 
    "property2": "val2" 
 
}, { 
 
    "Weather Condition": "sunny", 
 
    "property1": "val1", 
 
    "property2": "val2" 
 
}, { 
 
    "Weather Condition": "sunny", 
 
    "property1": "val1", 
 
    "property2": "val2" 
 
}]; 
 

 
// put the snippet below in your d3.csv function 
 
var expensesByName = d3.nest() 
 
    .key(function(d) { 
 
    return d["Weather Condition"]; 
 
    }) 
 
    .entries(data); 
 

 
console.log(expensesByName);
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>

+0

多數民衆贊成在此非常感謝,但有沒有辦法直接從csv文件做到沒有進一步操縱?即轉換爲JSON。它是一個非常大的數據集,有數千個項目... – Treeno1

+0

你不需要將任何東西轉換成'json'。這只是爲了向你展示分組是如何工作的,而且我沒有任何示例csv文件方便。只需在'd3.csv'函數中放入'd3.nest'函數即可。 – sparta93

+0

多數民衆贊成在brill,謝謝! – Treeno1

相關問題