programing

정렬-객체 및 정수

newnotes 2023. 9. 7. 22:00
반응형

정렬-객체 및 정수

CSV 파일에 숫자가 있는 콜몬을 정렬하려고 합니다.하지만 어찌된 일인지 효과가 없습니다.샘플 CSV:

Orange;65
Red;160
Green;140
White;110
Purple;85

이것이 제가 사용해 본 코드입니다.

$csv = Import-Csv -Header "Color", "Number" -delimiter ';' data.csv
$csv | Sort-Object Number

이를 통해 다음과 같은 결과를 얻을 수 있습니다.

Color                Number
-----                ------
White                110
Green                140
Red                  160
Orange               65
Purple               85

분명히 정확한 순서는 아닙니다.이 문제를 해결하는 방법을 설명해 주실 수 있습니까?

Import-CSVcsv 열 가져오기:strings기본적으로당신은 그것을 할 필요가 있습니다.int값을 기준으로 정렬할 수 있기 전에 "통계적"이 아닙니다.예:

$csv = Import-Csv -Header "Color", "Number" -delimiter ';' data.csv
$csv | % { $_.Number = [int]$_.Number }
$csv | Sort-Object Number

Color  Number
-----  ------
Orange     65
Purple     85
White     110
Green     140
Red       160

또는 다음과 같이 정렬하는 동안 캐스트할 수 있습니다.

$csv = Import-Csv -Header "Color", "Number" -delimiter ';' data.csv
$csv | Sort-Object @{e={$_.Number -as [int]}}

혹은 더 짧게$csv | Sort-Object { [int]$_.Number }

언급URL : https://stackoverflow.com/questions/15040460/sort-object-and-integers

반응형