我需要获取CSV文件并找到每行和每列的平均值。有922行& 11列。到目前为止,我已经能够将值打印到控制台,但它们不是由行和列分隔,只是一个值,然后是一个新行。到目前为止,我有:
public static void main(String[] args) {
String fileName = "eeg.csv";
File file = new File(fileName);
try {
Scanner inputStream = new Scanner(file);
while (inputStream.hasNext()){
String data = inputStream.next();
System.out.println(data);
}
inputStream.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
我很感激任何帮助将值排序回行和&列,以及有关如何按行和列查找平均值的任何建议。谢谢。
答案 0 :(得分:0)
对于大多数使用CSV的情况,首先要按行或行分组(读取和)解析文件,以获取行;然后按分隔符模式拆分每一行,对于CSV为\s*,\s*
,以获取每一行的列。
遍历行和列以找到之后的平均值应该是微不足道的。
更高级的情况,例如可以包含分隔符"quoted blocks"
的{{1}},新行或甚至其他引用值(通常作为双引号,
处理,以便解析器可以知道差异),使用""
和Pattern
或其他解析技术可以更好地解决。
答案 1 :(得分:0)
使用Apache POI库。
public int getPhysicalNumberOfRows();
public int getFirstRowNum();
public int getLastRowNum();