- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我读过一些关于 Pandas 的 to_csv( ... etc ...) 的 Python 2 限制。我击中了吗?我在 Python 2.7.3
当 ≥ 和 - 出现在字符串中时,这会变成垃圾字符。除此之外,导出是完美的。
df.to_csv("file.csv", encoding="utf-8")
有什么解决办法吗?
df.head() 是这样的:
demography Adults ≥49 yrs Adults 18−49 yrs at high risk|| \
state
Alabama 32.7 38.6
Alaska 31.2 33.2
Arizona 22.9 38.8
Arkansas 31.2 34.0
California 29.8 38.8
csv 输出是这样的
state, Adults ≥49 yrs, Adults 18−49 yrs at high risk||
0, Alabama, 32.7, 38.6
1, Alaska, 31.2, 33.2
2, Arizona, 22.9, 38.8
3, Arkansas,31.2, 34
4, California,29.8, 38.8
整个代码是这样的:
import pandas
import xlrd
import csv
import json
df = pandas.DataFrame()
dy = pandas.DataFrame()
# first merge all this xls together
workbook = xlrd.open_workbook('csv_merger/vaccoverage.xls')
worksheets = workbook.sheet_names()
for i in range(3,len(worksheets)):
dy = pandas.io.excel.read_excel(workbook, i, engine='xlrd', index=None)
i = i+1
df = df.append(dy)
df.index.name = "index"
df.columns = ['demography', 'area','state', 'month', 'rate', 'moe']
#Then just grab month = 'May'
may_mask = df['month'] == "May"
may_df = (df[may_mask])
#then delete some columns we dont need
may_df = may_df.drop('area', 1)
may_df = may_df.drop('month', 1)
may_df = may_df.drop('moe', 1)
print may_df.dtypes #uh oh, it sees 'rate' as type 'object', not 'float'. Better change that.
may_df = may_df.convert_objects('rate', convert_numeric=True)
print may_df.dtypes #that's better
res = may_df.pivot_table('rate', 'state', 'demography')
print res.head()
#and this is going to spit out an array of Objects, each Object a state containing its demographics
res.reset_index().to_json("thejson.json", orient='records')
#and a .csv for good measure
res.reset_index().to_csv("thecsv.csv", orient='records', encoding="utf-8")
最佳答案
您的“坏”输出是 UTF-8,显示为 CP1252。
在 Windows 上,如果文件开头没有字节顺序标记 (BOM) 字符,许多编辑器会假定默认的 ANSI 编码(美国 Windows 上的 CP1252)而不是 UTF-8。虽然 BOM 对 UTF-8 编码毫无意义,但其 UTF-8 编码的存在可作为某些程序的签名。例如,即使在非 Windows 操作系统上,Microsoft Office 的 Excel 也需要它。试试:
df.to_csv('file.csv',encoding='utf-8-sig')
该编码器将添加 BOM。
关于python - Pandas df.to_csv ("file.csv"encode ="utf-8")仍然为减号提供垃圾字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25788037/
我需要一个由 , 分割数据的单行 CSV。我的问题是,当我尝试使用 apply 遍历我的 Dataframe 时,我得到一个 Series 对象并且 to_csv 方法给我一个 str 分成行,将 N
尝试使用 pandas 将数据帧写入 csv 并删除连接值产生的引号。解释器不接受参数引用。 错误 TypeError: to_csv() got an unexpected keyword argu
我正在使用 to_csv() 方法将数据框写入 .csv 文件。我有一个名为 emotion 的变量,它引用一个数据框,我正在使用 to_csv() 像这样; emotion.to_csv(file
我有这个代码 import numpy as np import pandas as pd import csv odata = pd.read_csv('email.csv') data = oda
我有一个具有以下结构的数据框,为了解决这个问题,我对其进行了简化,我正在从 csv 文件中读取数据框。 A B C D E LOCATION DATE DAT
我用 pd.read_csv 读取 CSV 文件, 如图所示: lisp = pd.read_csv('ida_lisp.ida', header=None, skip_blank_lines=Fal
我试图从 tripadvisor 抓取数据,但是从我尝试抓取的几个页面中,当我尝试将其导出到 csv 时,它只显示 1 行数据并给出这样的错误消息 AttributeError: 'NoneType'
我有数据框 df = [["A1" "B2" "C3"] ["D4" "E5" "F6"]] (所有文本均为字符串)我想使用 df.to_csv() 将其保存到一个文件中,文本“E5”为彩色/粗体。可
出于某种原因,我需要以这种格式输出到 csv 并在每列名称周围加上引号,我想要的输出如下所示: "date" "ret" 2018-09-24 0.00013123989025119056 我正在尝试
如何将文件写入文件名未编码的文件系统? 目前,写入 /myfolder/my file.csv 变为 /myfolder/my%20file.csv。我希望文件名是my file.csv。 代码片段:
来自具有以下格式的 csv 文件: Date,Data 01-01-01,111 02-02-02,222 03-03-03,333 我使用以下代码计算值的月平均值: data = pd.read_c
我有一个数据集,我试图将其拆分为训练集和测试集。我制作了以下脚本来分割数据,如上所述: import pandas as pd import numpy as np data_path = "/pat
我想使用 DecisionTree 2.2.2 构建决策树。 https://engineering.purdue.edu/kak/distDT/DecisionTree-2.2.2.html 但是,
我正在将 pandas 数据帧写入 csv 文件。但是我可以发现唯一 ID 的数量正在减少,但总行数保持不变 下面您可以找到代码: 检查grouped_test的总计数和唯一计数 grouped_t
我是 python 的新手,到目前为止我很喜欢 ipython notebook 来学习。我是在使用 to_csv() 函数将 Pandas 数据帧写出到文件中吗?我想打开 csv 以查看它在 exc
似乎 pandas.to_csv 函数有两个属性做同样的事情。 也许我遗漏了什么。 来自文档: columns : sequence, optional Columns to write header
我正在使用 jupyter notebook pandas to_csv 不会将数据帧输出到文件。 我尝试使用 to_csv 通过设置工作目录或指定目录将数据帧输出到 csv 文件,但它没有创建任何文
我想使用 Pandas DataFrame 将我的数据写入 csv 文件,我的代码是: >>> for _, dataframe in my_data.items(): datafra
为了降低内存成本,我使用 astype() 指定了我的 pandas 数据框的数据类型,例如: df['A'] = df['A'].astype(int8) 然后我使用 to_csv() 来存储它,但
关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。 这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topi
我是一名优秀的程序员,十分优秀!