スキップしなければならない行がいくつかあるため、きれいではないクリーンなCSVファイルをインポートしています。 しかし、多くのフィールドには望ましくない文字が含まれており、正常に削除できませんでした。D3 csvインポートでデータを変更しようとしました
d3.csv("DATA2015.csv", function(csv) {
csv.CheckDate = csv.CheckDate.substring(1);
csv.Amount = +csv.Amount.substring(1);
csv.Fee=+csv.Fee;
csv = csv.filter(function(row) {
return row['Amount'] != '';
})
console.log(csv[0]);
console.log(csv[1]);
console.log(csv[2]);
console.log(csv[3]);
console.log(csv[4]);
});
をそして私がキャッチされない例外TypeErrorを取得しています:プロパティ「ストリング」を読み取ることができません。これは、私がしようとしてるものです
Amount:"$286.28"
CheckDate:" 12/31/15"
:
データは、追加の文字とスペースが付属していますsubstring(1)行で未定義です。
どのようなアイデアも大歓迎です。
:代わりにあなたのアカウントにそれを取るなど、
を、配列の各メンバーをループにしたいと思い
row.CheckDate.substring(1)
、これを試してみてください。量)? –最も可能性の高い問題は、csv.CheckDateとcsv.Amountがスティッキングではないことです。これらのフィールドの値を持たない行がいくつかあります。 csvオブジェクトの外観とそのプロパティのコードを表示できますか? – shteeven
なぜあなたは単純にエクセルをかけて、それらの望ましくない文字のすべてを見つけて置き換えるのではないのですか?あなたが読む前に、この方法でCSVを消毒します。 – Klaujesi