Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/330.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
Python 如果要对某个帧进行加密,则该帧将丢失列名_Python_Pandas_Sparse Matrix - Fatal编程技术网

Python 如果要对某个帧进行加密,则该帧将丢失列名

Python 如果要对某个帧进行加密,则该帧将丢失列名,python,pandas,sparse-matrix,Python,Pandas,Sparse Matrix,我将pandas版本0.16.0与Python2.7一起使用 我在列和索引索引上都有一个带多索引的SparFrame: In [1]: df.index.names Out[1]: FrozenList([u'Malicious', u'Environment', u'Agent Version', u'Datamodel Version', u'Operating System', u'User', u'Process', u'Unique ID', u'Valid', u'Count'])

我将pandas版本0.16.0与Python2.7一起使用

我在
索引
索引上都有一个带多索引的SparFrame:

In [1]: df.index.names
Out[1]: FrozenList([u'Malicious', u'Environment', u'Agent Version', u'Datamodel Version', u'Operating System', u'User', u'Process', u'Unique ID', u'Valid', u'Count'])
以及:

当我将数据帧转换为密集矩阵时,
索引
多索引名称保持不变:

In [1]: df.to_dense().index.names
Out[1]: FrozenList([u'Malicious', u'Environment', u'Agent Version', u'Datamodel Version', u'Operating System', u'User', u'Process', u'Unique ID', u'Valid', u'Count'])
但是,
多索引名称将丢失并替换为

In [1]: df.to_dense().columns.names
Out[1]: FrozenList([None, None, None])
同时保持多索引结构

我知道我可以通过这样做简单地重新分配以前的名字

In [20]: dense = df.to_dense()
In [21]: dense.columns.names = df.columns.names
In [22]: dense.columns.names
Out[22]: FrozenList([u'Feature', u'Parameter', u'Value'])
但我的问题是,如果这是预期的行为,为什么会发生这种情况?如果是,为什么


谢谢

这可能是一个bug,但是
df.columns
df.columns.names
之间有什么区别?
df.columns
多索引
对象,这是
names
属性是一个
FrozenList
单独描述列的名称,这可能是一个错误,当转换为密集df时,它没有传播属性,值得在@EdChum上检查:当然我已经检查过了,找不到任何相关内容。
In [20]: dense = df.to_dense()
In [21]: dense.columns.names = df.columns.names
In [22]: dense.columns.names
Out[22]: FrozenList([u'Feature', u'Parameter', u'Value'])