ValueError:缓冲区dtype不匹配,预期为“ Python对象”,但为“ double”

时间:2018-07-17 15:15:36

标签: python-3.x anaconda jupyter-notebook

我正在尝试读取hdf格式的文件。之前它工作正常,但是突然之间我收到以下错误:

pandas._libs.writers.string_array_replace_from_nan_rep()中的pandas_libs \ writers.pyx

ValueError:缓冲区dtype不匹配,预期为“ Python对象”,但为“双精度”

我的代码如下:

nm -C al_test.o
                 U __cxa_allocate_exception
                 U __cxa_atexit
                 U __cxa_begin_catch
                 U __cxa_end_catch
                 U __cxa_free_exception
                 U __cxa_throw
                 U __dso_handle
00000000000000e0 t _GLOBAL__sub_I__Z9test_wavev
                 U __gxx_personality_v0
0000000000000000 r .LC1
0000000000000000 T main
                 U __stack_chk_fail
                 U _Unwind_Resume
0000000000000000 T test_wave()
                 U operator delete(void*)
                 U min::wave::wave(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
                 U min::wave::is_mono() const
                 U std::runtime_error::runtime_error(char const*)
                 U std::runtime_error::~runtime_error()
                 U std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long)
                 U std::ios_base::Init::Init()
                 U std::ios_base::Init::~Init()
                 U std::basic_ios<char, std::char_traits<char> >::clear(std::_Ios_Iostate)
                 U std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)
                 U std::cout
                 U std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)
0000000000000000 b std::__ioinit
                 U typeinfo for std::runtime_error
                 U typeinfo for std::exception

我正在使用Jupyter笔记本和python 3.6。我只是不明白为什么我以前可以读取文件而没有任何问题,现在弹出此错误。自上次运行以来,我所做的不同操作是创建一个虚拟环境来运行另一个代码,由于我现在遇到此错误,我重新安装了anaconda,但在读取此文件时仍然遇到此错误:(

2 个答案:

答案 0 :(得分:2)

您可能已经安装了最新的熊猫版本。我对pandas-0.23.4遇到了同样的问题,将其降级为0.22.0对我来说已经解决了。

答案 1 :(得分:2)

将熊猫更新到0.24版

这是熊猫0.23版本中的问题。但它在最新版本的熊猫0.24.1中得到了解决。

参考:https://github.com/pandas-dev/pandas/issues/24404

您可以升级

pip3 install pandas -upgrade 

conda install pandas