- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在读取一个精度为 8 的数据文件,然后在插入一些值之后我将它们保存为 float_format 选项不起作用的地方,
df.to_csv('data.dat',sep=' ', index=False, header=False, float_format="%.8f")
结果文件看起来像
0.02506602 0.05754493 0.36854688
0.02461631 0.0599653 0.43078098
0.02502534 0.06209149 0.44955311
0.4267356675182389 0.1718682822340447 0.5391386354945895
0.426701667727433 0.17191008887193007 0.5391897818631616
0.4266676661681287 0.17195189807522643 0.5392409104354972
前 3 行在数据文件中,接下来的 3 行是新的插值。我希望所有值的长度都相同。这里出了什么问题,我该如何解决?
此外:如果我可以针对不同的列以不同方式控制浮点精度,那就太好了。
最佳答案
您的代码看起来不错。您的输入数据很可能存在问题。使用 pd.DataFrame.dtypes
检查您所有的输入系列都是 float
类型。如果它们没有通过以下方式转换为 float
:
df[col_list] = df[col_list].apply(pd.to_numeric, downcast='float').fillna(0)
这是一个工作示例:
from io import StringIO
import pandas as pd
mystr = StringIO("""0.02506602 0.05754493 0.36854688
0.02461631 0.0599653 0.43078098
0.02502534 0.06209149 0.44955311
0.4267356675182389 0.1718682822340447 0.5391386354945895
0.426701667727433 0.17191008887193007 0.5391897818631616
0.4266676661681287 0.17195189807522643 0.5392409104354972""")
df = pd.read_csv(mystr, delim_whitespace=True, header=None)
print(df.dtypes)
# 0 float64
# 1 float64
# 2 float64
# dtype: object
file_loc = r'C:\temp\test.dat'
df.to_csv(file_loc, sep=' ', index=False, header=False, float_format="%.8f")
df = pd.read_csv(file_loc, delim_whitespace=True, header=None)
print(df[0].iloc[-1])
# 0.42666767
关于python - 如何使用 pandas to_csv float_format?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51476690/
我试图让 float_format 参数与 pandas 的 to_excel() 函数一起使用,但它似乎没有做任何事情。 代码: df = pd.DataFrame({ 'date'
我有以下数据框: CLIENT | AMOUNT N130 | 1000.50 并想将其插入到电子邮件中。 var = df.to_html(header=True, index=False, n
我需要将 df 写入文本文件,以节省一些磁盘空间我想为每列设置小数位数,即每列具有不同的宽度。 我试过: df = pd.DataFrame(np.random.random(size=(10, 4)
我正在读取一个精度为 8 的数据文件,然后在插入一些值之后我将它们保存为 float_format 选项不起作用的地方, df.to_csv('data.dat',sep=' ', index=Fal
我正在尝试输出 pandas 数据框,但我希望它以百分比形式输出 float 。我已经对此进行了大量搜索,并且我可以使它们在输出中显示为 float ,就像我想要的那样使用 pd.options.di
背景 我正在做一些模拟。通过改变参数进行系统分析(在这种情况下仅限 rpm)并将结果数据帧 results_df 的每一行附加到汇总数据帧 df 包含根据不同的 rpm 提供我的系统的 baviour
当使用pandas时DataFrame ,我可以to_string(float_format='%.1f')在DataFrame上。然而,当将相同的方法应用于 df.describe() 时,失败了。
我有一个包含异构数据的 pandas DataFrame。这意味着有些列是 float ,有些是字符串,等等。 我首先尝试通过调用 xlsxwriter 工作表级别 set_column() 来格式化
我见过 this和 this关于格式化 floating-point 数字以在 pandas 中显示,但我有兴趣为 integers 做同样的事情。 现在,我有: pd.options.display
我是一名优秀的程序员,十分优秀!