解析しようとしているcsvファイルには、サンプルごとに複数の行を含むさまざまなサンプルが含まれています。たとえば、同じサンプル名 "S1"の10行があり、各行からCT値を取得する必要があります。私はCT値(ターゲット名で区別される)を組み合わせて、各サンプルのサンプルクラスを作成しようとしています。私はファイルを解析することができますが、私はループスルーして適切なデータを収集するのに苦労しています。csvファイルを解析して情報を収集するのに役立ちます
my Sampleクラスのコンストラクタには、サンプル名用とCT値用の11個のパラメータがあります。
私は長いことそれについて考えた後、必要なすべての情報をString配列のArrayListに集めようとしました。これはあまり役に立ちませんでした。これは、サンプルクラスのインスタンスとインスタンスを作成するための情報を一緒に収集する方法がわからなくなったためです。ここに私が試したものです。ここで
public void parseCSV(){
String line = "";
String csvSplitBy = ",";
try
{
Scanner scanner = new Scanner(new FileReader("/Users/Neema/Desktop/testData.csv"));
String[] data;
while (scanner.hasNextLine())
{
line = scanner.nextLine();
data = line.split(csvSplitBy);
if (data.length > 0 && data[0].equals("Well"))
{
while (scanner.hasNextLine())
{
line = scanner.nextLine();
data = line.split(csvSplitBy);
if (data.length > 4)
{
String sampleName = data[3];
String dataType = data[4];
String ctValue = data[11];
String[] gatheredData = {sampleName, dataType, ctValue};
parsedData.add(gatheredData);
}
}
}
}
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
は、CSVファイルには、任意のヘルプtestData2
感謝です!
はあなたのサンプルクラスを使用すると、.CSVからのデータを持っているよりも多くのパラメータを持つコンストラクタを持っている問題ですか? – Prichmp
必ずしもそうではありません。各サンプルには10個のデータポイントがありますが、各サンプルの1行につき1つのデータポイントで測定器から外れます。すべてのデータポイントが1行にあれば問題はほとんどありませんが、異なる行からデータを取得して同じサンプル名に関連付けると問題が発生します。 – sparks11