我有一个pandas数据帧,所有的列都是对象类型。我试图通过键入cudf.from_pandas(df)将其转换为cudf,但出现了以下错误:
ArrowTypeError: Expected a bytes object, got a 'int' object
我不明白为什么这些列都是字符串而不是整型。我的第二个问题是如何向cudf追加一个新元素(如pandas : df。append()
我正试图使用dask_cudf对一个非常大的数据集(150,000,000+记录)进行预处理,以便进行多类xgboost培训,并且无法对类列(dtype is string)进行编码。我试着使用“替换”函数,但是错误消息说这两个dtype必须匹配。我试过使用dask_ml.LabelEncoder,但它说cudf中不支持字符串数组。我尝试过以各种方式使用compute(),但是我一直遇到内存不足的错误(我假设是因为cudf dataframe上的操作需要一个更小的数据集)。我还尝试取出类列,对其进行编码,然后将其与dataframe合并,但分区不对齐。我尝试手动排列它们,但是dask_cudf
我正在使用tensorflow进行一些机器学习,并且需要对数据进行一些事先的转换。我遇到的瓶颈是我的函数:获取一个数字数组,将每个数字与其他数字进行比较,并创建一个比较表。
职能如下:
def compare(list, length):
result = np.zeros(length*length)
i=0
for row in range(length):
for col in range(length):
if row != col:
result[i] = list[col] - list[r
我对推荐的从密集的numpy对象创建cudf DataFrames的快速方法很感兴趣。我见过许多这样的例子:将2dnumpy矩阵的列拆分成元组,然后对元组列表调用cudf.DataFrame --这是相当昂贵的。使用numba.cuda.to_device是相当快的。是否可以使用numba.cuda.to_device,或者是否有更有效的方法来构建DataFrame? In [1]: import cudf
In [2]: import numba.cuda
In [3]: import numpy as np
In [4]: data = np.random.random((300,
我只是用cudf (rapidsai)加载了csv文件,以减少所需的时间。当我尝试搜索带有where df['X'] = A条件的索引时,出现了一个问题。 下面是我的代码示例: import cudf, io, requests
df = cudf.read_csv('fileA.csv')
# X is an existing column
# A is the value
df['X'] = np.where(df['X'] == A, 1, 0)
# What it is supposed to do with pan
我希望将以下代码(在熊猫中运行)转换为运行在cuDF中的代码。
被操纵的.head()的示例数据被插入到第三个代码单元格中的OG代码中--应该能够复制/粘贴运行。
熊猫的原始代码
# both are float columns now
# rawcensustractandblock
s_rawcensustractandblock = df_train['rawcensustractandblock'].apply(lambda x: str(x))
# adjust/set new tract number
df_train['census_tractnumb
我想在我的图形处理器上加速pandas,所以我决定使用cudf库。请推荐其他库(如果有)。
我尝试使用pip by pip3.6 install cudf-cuda92来安装cudf。pip版本为19.2.3(最新)。
当我在我的命令上运行pip3.6 install cudf-cuda92时,它说:
Collecting cudf-cuda92
ERROR: Could not find a version that satisfies the requirement cudf-cuda92 (from versions: none)
ERROR: No matching distrib
我有一个带有头的CSV文件。一些特性(列)是阶乘的,有些是数字的。
对于阶乘变量,我有很多包含大量NAs的列,例如:
Num1 Fact1 Num2 Fact2 Fact3
9889 Bla 23 BBxv NA
NA NA 456 BBxz NA
NA Abcd 3 BBxx Jet
NA NA 100 BBxy NA
NA NA NA NA NA
我想删除所有的因子列,其中有超过50%的NAs。
例如,由此产生的数据框架应当是:
Num1 Num2 Fact2
9889 23 BBxv
NA 45
我有一个有67列的翻译表,我得到了67列的输入。我的目标是检查是否能在这个翻译表中找到它。
为了明确起见,67列生成一个键,另外10列是该键的实际值。
如果输入中的某些列(变量)可以带有NA值,请告诉我如何快速找到它?
小例子:
投入:
a b c d e
1 9 "r" NA NA
翻译表:
a b c d e
5 NA NA NA 9
6 9 "o" 4 3