Frame<int,string>
의 Deedle
DataFrame
에는 누락 된 값이 있습니다. 누락 된 값을 빈 문자열 ""
으로 변환하고 싶습니다. valueOr
함수를 사용하려고했지만 도움이되지 않았습니다. 이것을 할 수있는 방법이 있습니까?누락 된 값을 문자열로 변환하는 방법은 무엇입니까?
여기 내 DataFrame
입니다 :
FSI
에
df;;
를 입력하면
let s1 = Series.ofOptionalObservations [ 1 => Some("A"); 2 => None ]
let s2 = Series.ofOptionalObservations [ 1 => Some("B"); 2 => Some("C") ]
let df = Frame.ofColumns ["A", s1; "BC", s2]
는
ColumnTypes = seq [System.String; System.String];
을 포함하여 몇 가지 정보를 얻을 수 있습니다. 따라서 df
의 값은 string
이고 string option
이 아닙니다.
이
함수valueOr
이다
emptyFoo
의 서명이다
string option -> string
let emptyFoo = valueOr ""
:
let valueOr (someDefault: 'a) (xo: 'a option) : 'a =
match xo with
| Some v -> v
| None -> someDefault
난 등의 보조 기능을 정의
emptyFoo
. 이것은
emptyFoo
다음 명령은 컴파일러에 허용되는 안 의미
df
의 값을 입력
string option
string
로하고 있지 때문에
let df' = Frame.mapValues emptyFoo df
이있다.
여전히 컴파일러는 불평하지 않고 코드가 실행됩니다. 그러나 df'
에는 여전히 누락 된 값이 있습니다.
누락 된 값을 빈 문자열로 변환하는 방법이 있습니까? Frame.mapValues
위한
감사합니다. 나는'float' 값에'fillMissingWith'를 사용했습니다. 어떤 정신적 인 장벽은 그것을 문자열에 사용하는 것을 생각하지 않았습니다. – Soldalma