/// <summary> /// Returns a colunm in a las file /// </summary> /// <param name="column"></param> /// <returns><see cref="Las"/></returns> /// Member of <see cref="ILas"/> public LasColumn Column(string column) { var hds = Header(); var sB = Data(); var index = Array.FindIndex(hds, 0, c => c.ToLower() == column.ToLower()); if (index < 0) { throw new ColumnError(column); } LasColumn lasColumn = new LasColumn(); lasColumn.numbers = sB.numbers.Select(c => c[index]).ToArray(); lasColumn.literals = sB.literals.Select(c => c[index]).ToArray(); return(lasColumn); }
/// <summary> /// Returns a column in a las file stripped off null values /// </summary> /// <param name="column"></param> /// <returns><see cref="LasColumn"/></returns> /// Member of <see cref="ILas"/> public LasColumn ColumnStripped(string column) { var hds = Header(); var sB = Data(); var nullValue = Well.GetValueOrDefault("NULL").Value; var index = Array.FindIndex(hds, 0, c => c.ToLower() == column.ToLower()); if (index < 0) { throw new ColumnError(column); } LasColumn lasColumn = new LasColumn(); lasColumn.numbers = sB.numbers.Select(c => c[index]).Where(x => x != ConvertToValue(nullValue)).ToArray(); lasColumn.literals = sB.literals.Select(c => c[index]).Where(x => x != nullValue).ToArray(); return(lasColumn); }