提问人:mtm 提问时间:11/17/2023 更新时间:11/17/2023 访问量:16
如何将新行附加到 DataFrame?
How to append a new row to a DataFrame?
问:
我有一个包含 800 个 .csv 文件的文件夹,每个文件有 3 列和 2048 行。我正在尝试使用 ML.NET 检索每个.csv文件的第一列,将其转置为一行,然后将每个列附加到 DataFrame 中。因此,最终我期望一个形状 (200 x 2048) 的数据帧。
除了转置列和将行追加到数据帧之外,我可以做任何事情。在文档中也找不到任何有用的东西,除非我错过了一些重要的东西。
var dataFrame1 = new DataFrame();
for (int i = 0; i < files.Length; i++)
{
IDataView data = mlContext.Data.LoadFromTextFile<CsvData>(files[i], separatorChar: ',', hasHeader: true);
data = mlContext.Data.SkipRows(data, minrange);
data = mlContext.Data.TakeRows(data, maxrange - minrange);
var pipeline = mlContext.Transforms.SelectColumns(new string[] { "PE" , "FPos"})
.Append(mlContext.Transforms.NormalizeMinMax("PE", fixZero:false));
var preview = pipeline.Fit(data).Transform(data);
var peColumn = preview.GetColumn<float>("PE");
var fPosColumn = preview.GetColumn<float>("FPos");
var testDfPE = new SingleDataFrameColumn("PE", peColumn);
var testDfFPOS = new SingleDataFrameColumn("FPos", fPosColumn);
...
}
我尝试将每一列提取到 testDfPE、testDfFPOS 中,并可能将它们附加到 dataFrame1 中,但这只是按列而不是按行附加它们。 我无法找到解决此问题的有效方法,特别是考虑到我正在处理大量.csv文件。 对于其他上下文,我最终将把这个数据帧与 .onnx 格式的预训练模型一起使用
答: 暂无答案
评论