CSV读取器[new from V1.0.8]
properties
late final String path; 文件路径
List<String>? rowLabels; 行标签
List<String>? colLabels; 列标签
List<int>? shape; 形状(包含行标签)
List<List<String>>? content; 初始读取的字符串数据
List<List<double>>? data; 转换字符串数据到数字型数据
methods
CSVReader(this.path)
在构造时传入文件路径且必须保证文件路径存在
Future<void> read_csv_async({
bool first_col_is_labels = true,
String loss_column_label = "Unnamed",
Encoding encoding = utf8
})
void read_csv_sync({
bool first_col_is_labels = true,
String loss_column_label = "Unnamed",
Encoding encoding = utf8
})
异/同步读取方法。三个参数分别是第一列是否是列标签、在第一列不是标签的情况下替换方案、读取时编码格式。
只有调用了read_csv_async或者read_csv_sync才能写入到rowLabels、colLabels、shape以及content
Future<List<List<double>>> convertToNumberAsync({double replace = double.nan})
List<List<double>> convertToNumberSync({double replace = double.nan})
将content属性转换生成data数据的方法,当数据不是数字型数据,可以使用replace替换
MatrixType拓展
static Future<MatrixType> read_csv_async(
String path, {
bool first_col_is_labels = true,
String loss_column_label = "Unnamed",
Encoding encoding = utf8,
double replace = double.nan
})
static MatrixType read_csv_sync(
String path, {
bool first_col_is_labels = true,
String loss_column_label = "Unnamed",
Encoding encoding = utf8,
double replace = double.nan
})
注意:生成的MatrixType保留了第一行是行标签的替换(一般是NaN、NaN……)。