我的 csv 看起来像这样:
year,dybde,snavn,sfylke
1965,110,Oslo,Sogn og Fjordane
1966,176,Krutå fjellstue,Sogn og Fjordane
1967,86,Ytre Sandsvær,Sogn og Fjordane
这将为 snavn
和 sfylke
值返回 NaN:
d3.csv("data.csv", function(error, data) {
data.forEach(function(d){
d.year = +d.year;
d.dybde = +d.dybde;
d.snavn = +d.snavn;
d.sfylke = +d.sfylke;
});
sdata = data;
console.log(sdata);
});
我尝试将字符串放在引号中,但它仍然返回 NaN。
任何指出错误的想法将不胜感激。
最佳答案
代码 something = +strVar
总是返回 NaN - 不可能直接将字符串转换为 int,因此它不是数字。
如果要将每个字符串都转换为 0,则必须编写 something = strVar|0
。
或者只是从这些行中删除符号 +
:
d.snavn = +d.snavn;
d.sfylke = +d.sfylke;
关于Javascript:解析 csv 中的字符串返回 NaN (不是数字),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20419663/