- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想用 Dimonson 250.000 x 250.000 创建一个 pandas SparseDataFrame。最后我的目标是想出一个大的邻接矩阵。
到目前为止,创建该数据框没有问题:
df = SparseDataFrame(columns=arange(250000), index=arange(250000))
但是当我尝试更新 DataFrame 时,我会遇到大量内存/运行时问题:
index = 1000
col = 2000
value = 1
df.set_value(index, col, value)
我检查了来源:
def set_value(self, index, col, value):
"""
Put single value at passed column and index
Parameters
----------
index : row label
col : column label
value : scalar value
Notes
-----
This method *always* returns a new object. It is currently not
particularly efficient (and potentially very expensive) but is provided
for API compatibility with DataFrame
...
后一句描述了这种情况下使用pandas的问题?在这种情况下,我真的很想继续使用 pandas,但在这种情况下这是完全不可能的!
有人知道如何更有效地解决这个问题吗?我的下一个想法是使用诸如嵌套列表/字典之类的东西......
感谢您的帮助!
最佳答案
这样做
df = pd.SparseDataFrame(columns=np.arange(250000), index=np.arange(250000))
s = df[2000].to_dense()
s[1000] = 1
df[2000] = s
In [11]: df.ix[1000,2000]
Out[11]: 1.0
所以程序是一次换出整个系列。 SDF 会将传入的系列转换为 SparseSeries。 (你可以自己用s.to_sparse()
看看它们是什么样子的。SparseDataFrame基本上是这些SparseSeries的dict,它们本身是不可变的。稀疏性在0.12中会有一些变化以更好支持这些类型的操作(例如设置将有效地工作)。
关于python - pandas SparseDataFrame 插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16584156/
我有一个 SQL 表,我可以将其作为 Pandas 数据框读入,它具有以下结构: user_id value 1 100 1 200 2 1
我正在尝试将 Python 字典列表转换为 Pandas DataFrame . 由于每个dict都有不同的key,占用内存太多。由于大多数值都是 NaN,所以 SparseDataFrame在这种情
有人曾经有效地序列化/反序列化 pandas SparseDataFrame 吗? import pandas as pd import scipy from scipy import sparse
我想用 Dimonson 250.000 x 250.000 创建一个 pandas SparseDataFrame。最后我的目标是想出一个大的邻接矩阵。 到目前为止,创建该数据框没有问题: df =
pandas.DataFrame(a) Out[41]: 1 2 3 0 1 2 NaN 1 1 NaN 3 a = [{1:1.0,2:2.0}, {1:1.0,3:3.0
我有一个很高的(2743470 行,2 列)DataFrame,将其称为 df,具有以下列,整数索引: | item | user | | 1 | abc | | 15 | abc |
在机器学习库 H2O 的 Python API 中,将稀疏 Pandas DataFrame 对象转换为 H2OFrame 对象的正确方法是什么? 最佳答案 recommended way似乎是将数据
我有一个密度非常低(设置了 0.1% 的条目)的大型 SparseDataFrame(例如,20k 索引 x 10k 列)。我正在尝试访问特定的行数据框,但我似乎做不到。虽然访问列很好。这是一个说明问
我注意到 Pandas 现在有 support for Sparse Matrices and Arrays .目前,我像这样创建 DataFrame(): return DataFrame(matr
用示例更新了问题 我尝试重现我的问题。事实证明,它甚至与我的数据集的大小无关。这是重现我的问题的最小示例: >>> import pandas as pd >>> data = pd.SparseDa
当前 Pandas 版本:0.22 我有一个 SparseDataFrame。 A = pd.SparseDataFrame( [['a',0,0,'b'], [0,0,0,'c']
(这个问题与 "populate a Pandas SparseDataFrame from a SciPy Sparse Matrix" 相关。我想从 scipy.sparse.coo_matrix
我想将 pandas SparseDataFrame 转换为 scipy.sparse.csc_matrix。但我不想先将其转换回稠密矩阵。 现在我有类似下面的内容。 df = pd.get_dumm
我是一名优秀的程序员,十分优秀!