小编ans*_*onw的帖子

pandas to_csv:在将pandas写入csv时抑制csv文件中的科学记数法

我正在给csv写一个pandas df.当我将其写入csv文件时,其中一列中的某些元素被错误地转换为科学记数法/数字.例如,col_1中包含诸如"104D59"之类的字符串.字符串主要在csv文件中表示为字符串,因为它们应该是.但是,偶尔的字符串,例如'104E59',正在转换为科学记数法(例如,1.04 E 61),并在随后的csv文件中表示为整数.

我试图将csv文件导出到软件包(即pandas - > csv - > software_new),这种数据类型的更改导致导出问题.

有没有办法将df写入csv,确保df ['problem_col']中的所有元素都在结果csv中表示为字符串或未转换为科学记数法?

这是我用来将pandas df写入csv的代码:df.to_csv('df.csv',encoding ='utf-8')

我还检查了问题列的dtype:对于df.dtype,df ['problem_column']是一个对象

python csv scientific-notation type-conversion pandas

10
推荐指数
2
解决办法
1万
查看次数

如果该子列表中的任何元素在另一个列表中,如何删除列表中的列表(即子列表)?

我有一个包含许多子列表的列表.例如:

full_list = [[1, 1, 3, 4], [3, 99, 5, 2],[2, 4, 4], [3, 4, 5, 2, 60]]
Run Code Online (Sandbox Code Playgroud)

我还有另一个列表,名为省略.例如:

omit = [99, 60, 98]
Run Code Online (Sandbox Code Playgroud)

如果该子列表中的任何元素在省略列表中,我想删除full_list 中的子列表.例如,我希望结果列表是:

reduced_list = [[1, 1, 3, 4], [2, 4, 4]]
Run Code Online (Sandbox Code Playgroud)

因为只有这些子列表没有省略列表中的元素.

我猜是有一些简单的方法可以通过列表理解来解决这个问题,但我无法让它工作.我尝试了很多东西:例如:

reduced_list = [sublist for sublist in full_list if item for sublist not in omit] 
Run Code Online (Sandbox Code Playgroud)
  • 这段代码导致错误(无效的snytax) - 但我想我错过了更多.

任何帮助将非常感激!

ps,以上是一个简化的问题.我的最终目标是从非常长的列表(例如,500,000个子列表)中删除子列表,如果这些子列表中的任何元素(字符串)在"省略"列表中包含超过2000个字符串.

python performance list sublist

4
推荐指数
1
解决办法
3565
查看次数