首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python为什么在我将更改后的数据类型保存到.csv后,它们会返回到原来的数据类型?

Python在将更改后的数据类型保存到.csv文件后,它们会返回到原来的数据类型的原因是因为.csv文件是一种纯文本文件格式,它只能保存字符串类型的数据。当我们使用Python的csv模块或pandas库将数据保存为.csv文件时,默认会将数据转换为字符串类型进行保存。

当我们从.csv文件中读取数据时,Python会将字符串类型的数据读取出来。如果我们希望将读取的数据转换回原来的数据类型,我们需要手动进行类型转换。

例如,如果我们将一个整数保存到.csv文件中,它会被保存为字符串类型。当我们从.csv文件中读取这个数据时,它会被读取为字符串类型。如果我们希望将它转换回整数类型,我们可以使用int()函数进行转换。

另外,如果我们希望在保存数据到.csv文件时保持原来的数据类型,可以使用pandas库的to_csv()方法,并指定参数dtype来指定每列的数据类型。这样在读取.csv文件时,数据将会按照指定的数据类型进行读取。

总结起来,Python在将更改后的数据类型保存到.csv文件后,会将数据转换为字符串类型进行保存。如果我们希望将数据转换回原来的数据类型,需要手动进行类型转换。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

整理了 25 个 Pandas 实用技巧,拿走不谢!

更改列名 让我们来看一下刚才我们创建示例DataFrame: ? 更喜欢选取pandas列时候使用点(.),但是这对那么列名中含有空格列不会生效。让我们来修复这个问题。...你可以每个CSV文件读取成DataFrame,将它们结合起来,然后再删除原来DataFrame,但是这样多占用内存且需要许多代码。 更好方式为使用内置glob模块。...glob返回任意排序文件名,这就是我们为什么要用Python内置sorted()函数来对列表进行排序。...和read_csv()类似,read_clipboard()自动检测每一列正确数据类型: ? 让我们再复制另外一个数据至剪贴板: ?...如果你想要进行相反过滤,也就是你吧刚才三种类型电影排除掉,那么你可以在过滤条件前加上破浪号: ? 这种方法能够起作用是因为Python中,波浪号表示“not”操作。 14.

3.2K10

这个插件竟打通了Python和Excel,还能自动生成代码!

接下来终端中运行这些命令,完成安装即可。 1. 创建环境 正在使用 Conda 创建一个新环境。你还可以使用 Python “venv”来创建虚拟环境。...选择所有必要字段获得一个单独表,其中包含数据透视表实现。...# MITO CODE END (DO NOT EDIT) 修改列数据类型、排序和过滤 你可以更改现有列数据类型,按升序或降序对列进行排序,或通过边界条件过滤它们。... Mito 中这些都很简单,可以通过选择屏幕上选项通过GUI本身完成。 单击所需看到一个数据类型列表。可以根据需要从下拉列表中选择任何数据类型,该数据类型应用于整个列。...你实际上可以追踪 Mitosheet 中应用所有转换。所有操作列表都带有适当标题。 此外,你可以查看该特定步骤!这意味着假设你更改了一些列,然后删除了它们。你可以退回到未删除时间。

4.6K10

整理了25个Pandas实用技巧(上)

更改列名 让我们来看一下刚才我们创建示例DataFrame: ? 更喜欢选取pandas列时候使用点(.),但是这对那么列名中含有空格列不会生效。让我们来修复这个问题。...按行从多个文件中构建DataFrame 假设你数据集分化为多个文件,但是你需要将这些数据集读到一个DataFrame中。 举例来说,有一些关于股票小数聚集,每个数据集为单天CSV文件。...你可以每个CSV文件读取成DataFrame,将它们结合起来,然后再删除原来DataFrame,但是这样多占用内存且需要许多代码 更好方式为使用内置glob模块。...你可以给glob()函数传递某种模式,包括未知字符,这样它会返回符合该某事文件列表。在这种方式下,glob查找所有以stocks开头CSV文件: ?...glob返回任意排序文件名,这就是我们为什么要用Python内置sorted()函数来对列表进行排序。

2.2K20

Python】这25个Pandas高频实用技巧,不得不服!

3更改列名 我们来看一下刚才我们创建示例DataFrame: df 更喜欢选取pandas列时候使用点(.),但是这对那么列名中含有空格列不会生效。让我们来修复这个问题。...CSV文件读取成DataFrame,将它们结合起来,然后再删除原来DataFrame,但是这样多占用内存且需要许多代码。...) stock_files ['data/stocks1.csv', 'data/stocks2.csv', 'data/stocks3.csv'] glob返回任意排序文件名,这就是我们为什么要用...更改显示选项 我们再来看一眼Titanic 数据集: titanic.head() 注意到,Age列保留到小数点1位,Fare列保留到小数点4位。...可以看到,Age列和Fare列现在已经保留小数点两位。注意,这并没有修改基础数据类型,而只是修改了数据显示结果。

6.4K40

Power Query 真经 - 第 1 章 - 基础知识

开发团队通常将测试版连接器先发布到 Power BI 中,一旦通过测试阶段,最终将它们发布到 Power BI 和 Excel 中。 一旦选择了需要使用连接器,就能浏览并找到文件。...还有一个解决方案,可以把列重新命名为原来名字,或者使用正如在本书后面学到,编辑 M 代码公式。...虽然可以单击每一列左上方图标来选择适当数据类型,但这可能花费相当多时间,特别是当大量列需要处理时。另一个技巧是让 Power Query 为所有列设置数据类型,然后覆盖想更改数据类型。...图 1-12 重新设置每列数据类型效果 为什么是 “Changed Type1” 呢?...1.6.3 检查步骤 一旦回到 Power Query 编辑器,就可以选择查询【应用步骤】窗口中任意步骤,对查询进行检查。

4.6K31

独家 | Pandas 2.0 数据科学家游戏改变者(附链接)

浏览 pyarrow 支持数据类型和 numpy 数据类型之间等效性实际上可能是一个很好练习,以便您学习如何利用它们。 现在也可以索引中保存更多 numpy 数值类型。...作者代码段 请注意在引入 singleNone 值,点如何自动从 int64 更改为 float64。 对于数据流来说,没有什么比错误排版更糟糕了,尤其是以数据为中心 AI 范式中。... pandas 2.0 中,我们可以利用 dtype = 'numpy_nullable',其中缺失值是没有任何 dtype 更改情况下考虑,因此我们可以保留原始数据类型本例中为 int64...4.写入时复制优化 Pandas 2.0 还添加了一种新惰性复制机制,该机制延迟复制数据帧和系列对象,直到它们被修改。...禁用copy_on_write,如果更改新数据帧,切片等操作可能更改原始 df: pd.options.mode.copy_on_write = False # disable copy-on-write

33530

独家 | Bamboolib:你所见过最有用Python库之一(附链接)

由Andrea Piacquadio拍摄,来源:Pexels 下面是对这个很酷Python看法,以及为什么你应该尝试一下。 喜欢写关于Python文章。...如果你读过博客,你可能知道写过很多关于库文章。写之前,测试了一些Python库,检查了它们最显著特性,如果愿意,还会写一些关于它们内容。...通常,尝试同一个博客中包含几个库来充实博客。然而,偶尔会发现一些很酷库,它们值得拥有自己博客。Bamboolib就是这种库! Bamboolib是那种让你想:以前怎么不知道这些?...在下图中,选择了meta_score列,数据类型更改为float,选择了一个新名称,新列就创建了。...发布请将链接反馈至联系邮箱(见下方)。未经许可转载以及改编者,我们依法追究其法律责任。

2.2K20

使用扩展JSONSQL Server数据迁移到MongoDB

1 为什么要迁移数据库? 评估数据库系统价值时候,一个重要目标就是能将数据存储到已有的数据库,也能将从已存在数据库中数据取出来。...测试发现,使用_id字段,不管是用单列表示还是多列复杂表示,只要保持这个KEY值和原来一样,无论谁使用数据库都有两种备选方案。...SQL Server数据类型映射到等效MongoDB BSON数据类型本例中,它是一个32位整数。...然后将其保存到指定目录中。一旦你导出扩展JSON文件之后,用Studio 3T将它们放置到适当位置就很容易了。 ?...甚至不想考虑关系系统移植到MongoDB,除非它只是一个初始阶段。本例中,将在SQL Server上创建集合,源数据库上从它们组成表创建集合,并对分层文档数据库最佳设计做出判断。

3.6K20

数据科学家常遇到10个错误

是一位高级数据科学家,Python编码Stackoverflow上排名第一,并与许多(初级)数据科学家合作。下面是经常看到10个常见错误。 1....硬编码无法访问路径 与错误1相似,如果您对其他人无法访问路径进行硬编码,则他们无法运行您代码,因此要查看很多地方手动更改路径。...不编写单元测试 随着数据,参数或用户输入更改,您代码可能会中断,有时您可能不会注意到。这可能导致错误输出,如果有人根据您输出做出决策,那么错误数据导致错误决策!...不记录代码 明白你着急进行一些分析。您可以一起努力取得成果给客户或老板。然后一个星期,他们说“请您更新此内容”。您看着您代码,不记得为什么要这么做。现在想象其他人需要运行它。...数据另存为csv或pickle 回到数据,毕竟是数据科学。就像函数和for循环一样,通常使用CSV和pickle文件,但它们实际上并不是很好。CSV不包含架构,因此每个人都必须再次解析数字和日期。

76220

快速提升效率6个pandas使用小技巧

通过数据类型选择columns 数据分析过程可能需要筛选数据列,比如只需要数值列,以经典泰坦尼克数据集为例: import seaborn as sns # 导出泰坦尼克数据集 df = sns.load_dataset...如果说只要需要数值列,也就是数据类型为int、float列,可以通过select_dtypes方法实现: df.select_dtypes(include='number').head() 选择除数据类型为...strings改为numbers pandas中,有两种方法可以字符串改为数值: astype()方法 to_numeric()方法 先创建一个样本dataframe,看看这两种方法有什么不同。...'sales': ['20','-','60','-'] }) df product列是字符串类型,price、sales列虽然内容有数字,但它们数据类型也是字符串...在上图中,glob()指定目录中查找所有以“ data_row_”开头CSV文件。 glob()以任意顺序返回文件名,这就是为什么使用sort()函数对列表进行排序原因。

3.2K10

6个提升效率pandas小技巧

然后python中执行pd.read_clipboard(),就能得到一模一样dataframe数据表: pd.read_clipboard() ?...通过数据类型选择columns 数据分析过程可能需要筛选数据列,比如只需要数值列,以经典泰坦尼克数据集为例: import seaborn as sns # 导出泰坦尼克数据集 df = sns.load_dataset...如果说只要需要数值列,也就是数据类型为int、float列,可以通过select_dtypes方法实现: df.select_dtypes(include='number').head() ?...product列是字符串类型,price、sales列虽然内容有数字,但它们数据类型也是字符串。 值得注意是,price列都是数字,sales列有数字,但空值用-代替了。...在上图中,glob()指定目录中查找所有以“ data_row_”开头CSV文件。 glob()以任意顺序返回文件名,这就是为什么使用sort()函数对列表进行排序原因。

2.8K20

独家 | 是时候和pd.read_csv(), pd.to_csv()说再见了

我们根据 Pandas、Dask 和 Datatable 以下参数上表现对它们进行排名: 1....但是,要从 Dask 和 DataTable 创建 CSV,我们首先需要将给定 Pandas DataFrame 转换为它们各自 DataFrame,然后将它们存储 CSV 中。...出于实验目的, Python 中生成了一个随机数据集,其中包含可变行和三十列——包括字符串、浮点数和整数数据类型。 2....阅读)以及您现在正在阅读帖子,您可能也认同观点。...由于我发现了与 CSV 相关众多问题,因此已尽可能停止使用它们。 最后,想说,除非您需要在 Excel 等非 Python 环境之外查看 DataFrame,否则您根本不需要 CSV

1.4K30

Power Query 真经 - 第 4 章 - Excel 和 Power BI 之间迁移查询

立即发现有些地方不对,如图 4-17 所示。 图 4-17 为什么 “Date” 列所有的值都显示为 “Error” 阅读错误信息时,可以看到该列正试图 “43131” 设置为一个日期。...关闭这个对话框并返回到 “Changed Type” 步骤,仍然遇到这样错误,它报错称不能将 “43131” 值设置为日期。所以来重写 “Changed Type” 步骤。...选择 “Date” 列并单击【整数】数据类型图标。 数据类型更改为【日期】。 选择【添加新步骤】(不是【替换当前转换】)。结果完全符合要求,如图 4-20 所示。...选择 “Date” 列并单击【日期】数据类型图标。 数据类型更改【整数】。 选择【替换当前转换】(不是【添加新步骤】 )。 选择 “Date” 列(再次)并单击【整数】数据类型图标。...数据类型更改为【日期】。 选择【添加新步骤】(不是【替换当前转换】)。 完成此操作,就可以通过进入【主页】【关闭并应用】,让 Power BI 应用这些改变来最终完成查询。

7.6K20

6个提升效率pandas小技巧

然后python中执行pd.read_clipboard(),就能得到一模一样dataframe数据表: pd.read_clipboard() ?...通过数据类型选择columns 数据分析过程可能需要筛选数据列,比如只需要数值列,以经典泰坦尼克数据集为例: import seaborn as sns # 导出泰坦尼克数据集 df = sns.load_dataset...如果说只要需要数值列,也就是数据类型为int、float列,可以通过select_dtypes方法实现: df.select_dtypes(include='number').head() ?...product列是字符串类型,price、sales列虽然内容有数字,但它们数据类型也是字符串。 值得注意是,price列都是数字,sales列有数字,但空值用-代替了。...在上图中,glob()指定目录中查找所有以“ data_row_”开头CSV文件。 glob()以任意顺序返回文件名,这就是为什么使用sort()函数对列表进行排序原因。

2.3K20

《Kaggle项目实战》 泰坦尼克:从R开始数据挖掘(一)

恩,你也许(自然而然)觉得使用Excel有些尴尬,使用Python又有些难,那阅读本文是非常明智向您介绍一种免费且强大统计编程语言R,并教会您如何用它进行预测分析。...接下来几个星期里,一步步带你走近R和它语法,并通过一系列算法引导你从小白逐步成为高手。介绍一些特征工程概念,以不停改善最佳预测结果。...你可能觉得预览与电子表格十分相似,二者主要区别是你只能通过R编程语言与预览进行交互。你看到数据列与我们之前Kaggle下载页面看到变量是一一对应。以相同方式导入test.csv数据集。...首先看一看这两个数据集中信息。阅读本教程时,你可以随时通过单击资源管理器中对象来预览数据集中更改两个导入命令复制到脚本中。...write.csv命令数据框保存为一个CSV文件,并且去掉了导致Kaggle拒绝我们提交行号,这很重要。 好啦,这个文件应该已经保存在你工作目录下了。

2.3K60

第四章1:列表

Python projects for beginners》是所见最友好Python入门书,前段时间组织并与几位Python爱好者一起对此书翻译为中文,特别感谢参与翻译这些小伙伴,你们辛苦了。...正在以推文形式连载出来,欢迎学习。 第四章 列表和循环 这一周,介绍一种称为“列表”数据类型和一种称为“循环”新概念。...列表作为Python中最重要数据类型之一,正试讲解之前,我们需要理解数据类型基础和分支语句。在这周末,我们将使用编译器来构建一个小规模hangman游戏。...你首要做是什么事呢? 星期一:列表 今天,我们介绍Python中最重数据类型——列表。在其它编程语言中,它们也被称之为“arrays”并有类似特征数据类型。这将是你所学到第一个数据集合。...我们更改索引位置0上数据之前,列表输出结果为[5, 10, 15, 20]。而当我们索引位置0上数据更改为100时,列表输出结果变为[100, 10, 15, 20]。

65610

Power Query 真经 - 第 5 章 - 从平面文件导入数据

即使用户建立了解决方案并将其发送给其他人,这也是正确,他们看到他们系统中格式。 现在知道了这些设置控制位置,来看看为什么使用 Power Query 时这很重要。...而最糟糕是:一旦它被解释并作为一个值存储本机程序中,要更改它就太晚了。这一直是 “TXT” 和 “CSV” 文件导入 Excel 问题。这些数据很容易出错,人们甚至都认不出来。...【警告】 一旦 “Changed Type” 步骤被应用,数据类型已经被转换,不会再还原到数据原来类型。...这将再次要求设置【使用区域设置】时转换该列。 【使用区域设置】 更改 “Amount” 列数据类型数据类型设置为【货币】。 地区设置为【英语 (加拿大)】。 单击【确定】。...将它类型设置为【整数】数据类型,并更新查询名称。 “Account” 列数据类型更改为【整数】数据类型查询名称改为 “Transactions”。

5.1K20

Python进阶之Pandas入门(三) 最重要数据流操作

,比如行和列数量、非空值数量、每个列中数据类型以及DataFrame使用了多少内存。...请注意,我们movies数据集中,Revenue和Metascore列中有一些明显缺失值。我们将在下一讲中处理这个问题。 快速查看数据类型实际上非常有用。...我们movies DataFrame中有1000行和11列。 清理和转换数据时,您将需要经常使用.shape。例如,您可能根据一些条件过滤一些行,然后想要快速知道删除了多少行。...调用.shape确认我们回到了原始数据集1000行。 本例中,DataFrames分配给相同变量有点冗长。因此,pandas许多方法上都有inplace关键参数。...使用inplace=True修改DataFrame对象: temp_df.drop_duplicates(inplace=True) 现在,我们temp_df将自动拥有转换数据。

2.6K20
领券