Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String str()和astype(str)之间的区别?_String_Python 3.x_Pandas_Hdf5 - Fatal编程技术网

String str()和astype(str)之间的区别?

String str()和astype(str)之间的区别?,string,python-3.x,pandas,hdf5,String,Python 3.x,Pandas,Hdf5,我想将数据帧df保存到.h5文件maindatfile.h5: df.to_hdf ("c:/Temp/MainDataFile.h5", "MainData", mode = "w", format = "table", data_columns=['_FirstDayOfPeriod','Category','ChannelId']) 并获取以下错误: ***异常:找不到正确的atom类型->[dtype->object,items->Index(['libelle\u Article',

我想将数据帧df保存到.h5文件maindatfile.h5:

df.to_hdf ("c:/Temp/MainDataFile.h5", "MainData", mode = "w", format = "table", data_columns=['_FirstDayOfPeriod','Category','ChannelId'])
并获取以下错误:

***异常:找不到正确的atom类型->[dtype->object,items->Index(['libelle\u Article','libelle\u segment',dtype='object')]

如果我以这种方式修改“Libelléu Article”专栏:

df['Libellé_Article'] = str(df['Libellé_Article'])
不再有错误,但我在执行以下操作时仍会收到错误消息:

df['Libellé_Article'] = df['Libellé_Article'].astype(str)
问题是使用str()会破坏我的内存

有什么想法吗

str(df['libelle\u Article'])
将整个列的内容转换为单个字符串。它将以一根非常大的绳子结束。这就是炸掉你公羊的原因

比如说

>> df = pd.DataFrame([1,2,3], columns=['A'])
>> df['A']
0    1
1    2
2    3 
Name: A, dtype: int64

>> str(df['A'])
 '0    1\n1    2\n2    3\nName: A, dtype: int64'
>> df['A'].astype(str)
0    1
1    2
2    3
Name: A, dtype: object

因此,如果您想将整个列转换为字符串类型,您应该只使用
.astype(str)
,因为这是一个无格式的无意义的问题,所以我投票将此问题作为主题外的问题结束。格式是可修复的(完成)。然而,这个问题仍然不清楚。你能把它改写成一个实际的问题吗?谢谢很抱歉,在我写完之前,我的浏览器发送了这个问题。汉克斯·凯瑟曼尼,你说得很对!因此,问题仍然是为什么在应用
.astype(str)
时会收到错误消息。我怀疑“Libellé_Article”专栏中有一个特殊字符,但到目前为止无法找到。为此,请发布一些示例数据,以便我可以在我的机器上本地试用