gpt4 book ai didi

r - 从.Xdf文件中删除重复的记录

转载 作者:行者123 更新时间:2023-12-02 21:37:46 25 4
gpt4 key购买 nike

我想从我的大型.xdf文件trans.xdf中删除重复的记录。
这是文件详细信息:

File name: /poc/revor/data/trans.xdf
Number of observations: 1000000000
Number of variables: 5
Number of blocks: 40
Compression type: zlib
Variable information:
Var 1: CARD_ID, Type: character
Var 2: SE_NO, Type: character
Var 3: r12m_cv, Type: numeric, Low/High: (-2348.7600, 40587.3900)
Var 4: r12m_roc, Type: numeric, Low/High: (0.0000, 231.0000)
Var 5: PROD_GRP_CD, Type: character

下面也是该文件的示例数据:
CARD_ID SE_NO   r12m_cv r12m_roc    PROD_GRP_CD
900000999000000000 1045815024 110 1 1
900000999000000000 1052487253 247.52 2 1
900000999000000000 9999999999 38.72 1 1
900000999000000000 1090389768 1679.96 16 1
900000999000000000 1091226035 0 1 1
900000999000000000 1091241208 538.68 4 1
900000999000000000 9999999999 83 1 1
900000999000000000 1091468041 148.4 3 1
900000999000000000 1092640358 3.13 1 1
900000999000000000 1093468692 546.29 1 1

我尝试使用rxDataStep函数来使用它的transform参数在.xdf文件上调用unique()函数。下面是相同的代码:
uniq_dat <- function( dataList )
{
datalist <- unique(datalist)
return(datalist)
}

rxDataStepXdf(inFile = "/poc/revor/data/trans.xdf",outFile = "/poc/revor/data/trans.xdf",transformFunc = uniq_dat,overwrite = TRUE)

但是出现以下错误:
Error in unique(datalist) : object 'datalist' not found

Error in transformation function: Error in unique(datalist) : object 'datalist' not found

Error in rxCall("RxDataStep", params) :

因此,任何人都可以指出我在这里所做的错误,或者是否有更好的方法从.Xdf文件中删除重复的记录。我避免将数据加载到内存数据帧中,因为数据非常大。

我正在通过HDFS在Revolution R Environment中运行以上代码。

如果可以通过任何其他方法获得相同的内容,则可以理解相同的示例。

我在这里先向您的帮助表示感谢 :)

干杯,

阿米特

最佳答案

您可以通过为rxSort()函数提供removeDupKeys = TRUE参数来删除重复值。例如,您的情况:

XdfFilePath <- file.path("<your file's fully qualified path>/trans.xdf")
rxSort(inData = XdfFilePath,sortByVars=c("CARD_ID","SE_NO","r12m_cv","r12m_roc","PROD_GRP_CD"), removeDupKeys=TRUE)

如果要基于特定键列(例如,基于SE_NO列)删除重复记录
将键值设置为sortByVars =“SE_NO”

关于r - 从.Xdf文件中删除重复的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30938074/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com