问题描述
试图使用deedle(Frame.ReadCsv
)加载CSV文件,但是我在浮点数字段中使用逗号作为十进制分度符,因此将它们读取为int(忽略逗号)。
有什么方法可以加载吗?
解决方法
如果您有一个使用逗号作为十进制数字并将其用作分隔符的CSV文件,则由于存在歧义,因此无法对其进行解析。例如:
One,Two
1,2,3
应将其解析为1,2
和3
,还是应将其解析为1
和2,3
?如果要对小数点使用逗号,则需要使用其他内容作为分隔符。例如,分号;
One; Two
1,2; 3
现在这是明确的,您可以解析它。您需要指定separators
。另外,您还可以指定一种文化,该文化使用,
作为十进制数字分隔符来正确解析十进制数字。例如,在捷克文化中就是这种情况,因此以下内容将按预期方式解析文件:
Frame.ReadCsv("c:/temp/test.csv",separators:";",culture:"cs-CZ")