如何使用统计技术将数字列自动转换为分类数据 >资料 ACC\u ID REG PRBLT OPP\u TYPE\u DESC PARENT\u ID ACCT\u NM INDUSTRY\u ID购买压水堆版本数量 11316456号90 A 2122628569 INF 7379 10190.82 6500 1 11456476是1 I 2385888136模块9199 17441.72 466.5 31 13453245号10 D 2122628087木制355944279.212500 500 15674568 No 1 I 27020745521 Nine 7379 183218.8 25.91 1

如何使用统计技术将数字列自动转换为分类数据 >资料 ACC\u ID REG PRBLT OPP\u TYPE\u DESC PARENT\u ID ACCT\u NM INDUSTRY\u ID购买压水堆版本数量 11316456号90 A 2122628569 INF 7379 10190.82 6500 1 11456476是1 I 2385888136模块9199 17441.72 466.5 31 13453245号10 D 2122628087木制355944279.212500 500 15674568 No 1 I 27020745521 Nine 7379 183218.8 25.91 1,r,statistics,numeric,categorical-data,R,Statistics,Numeric,Categorical Data,以上是给定的数据集 当我在R中加载相同的时,我有以下结构 >data ACC_ID REG PRBLT OPP_TYPE_DESC PARENT_ID ACCT_NM INDUSTRY_ID BUY PWR REV QTY 11316456 No 90 A 2122628569 INF 7379 10190.82 6500 1 114

以上是给定的数据集

当我在R中加载相同的时,我有以下结构

>data ACC_ID REG PRBLT OPP_TYPE_DESC PARENT_ID ACCT_NM INDUSTRY_ID BUY PWR REV QTY 11316456 No 90 A 2122628569 INF 7379 10190.82 6500 1 11456476 Yes 1 I 2385888136 Module 9199 17441.72 466.5 31 13453245 No 10 D 2122628087 Wooden 3559 44279.21 2500 500 15674568 No 1 I 2702074521 Nine 7379 183218.8 25.91 1 >str(数据) $ACC_ID:int 11316974 11620677 11865091。。。 $REG:系数w/2级“否”、“是”:1 2 1 1。。。 $PRBLT:int 901101300101601。。。 $OPP_类型描述:系数w/3级“D”…:3 2 1 1 3 2。。。 $PARENT_ID:num 2.12e+092.39e+092.12e+092.70e+092.12e+09。。。 $ACCT_NM:系数w/20水平“垂直营销”…:10 15 20 17 8 16 2 14 7 11。。。 $INDUSTRY_ID:int 7379 9199 3559 7379 2711 7374 7371 8742 4813 2111。。 $BUY PWR:num 1014791 17442。。。 $REV:num 6500 46617 250000 25564 20000。。。 $QTY:int 131500 16000。。。 但是,我想以某种方式自动地让R输出以下字段作为因子,而不是int(借助于统计建模或任何其他技术)。理想情况下,这些字段不是连续字段,而是分类的标称字段

>str(data) $ ACC_ID : int 11316974 11620677 11865091 ... $ REG : Factor w/ 2 levels "No ","Yes ": 1 2 1 1 1 1 1 1 1 1 ... $ PRBLT : int 90 1 10 1 30 30 10 1 60 1 ... $ OPP_TYPE_DESC : Factor w/ 3 levels "D",..: 3 2 1 2 1 1 1 3 3 2 ... $ PARENT_ID : num 2.12e+09 2.39e+09 2.12e+09 2.70e+09 2.12e+09 ... $ ACCT_NM : Factor w/ 20 levels "Marketing Vertical",..: 10 15 20 17 8 16 2 14 7 11 ... $ INDUSTRY_ID : int 7379 9199 3559 7379 2711 7374 7371 8742 4813 2111 .. $ BUY PWR : num 1014791 17442 ... $ REV : num 6500 46617 250000 25564 20000 ... $ QTY : int 1 31 500 1 6 100 ... 会计识别号 家长ID 工业标识 而REV和QTY列应保持原样

此外,分析不应特定于此处显示的数据和列。逻辑必须适用于我们在R中加载的任何数据集(具有不同的列)

有什么方法可以做到这一点吗?欢迎提出任何意见


谢谢你

我对你的问题感到困惑,因为你说你想“借助统计建模”进行转换,但我感觉你只是想让
数据$ACC_ID,我想要的不是你刚才提到的直接转换。这需要发生在后端,而不是我们这边。例如,查看ACC_ID的散点图,我们可能会发现所有内容都集中在指定范围内。因此,算法应该假设这不是一个数字,而是一个分类变量。另一个例子是,长度(唯一(data$PRBLT))/length(data$PRBLT)-如果这个度量值为5%(唯一值),我们可以假设数据是离散的,而不是continious@zelite我最终想要的是
data$ACC\ID您的问题“如何判断列是否是分类的”对我来说似乎很宽泛,或者更适合交叉验证——这通常取决于数据的上下文。一般规则可以是
length(unique(col))
,其中,
k
是一个调整变量。这为唯一值的数量与总值设置了一定的容差比率。但是,这将丢失唯一ID之类的东西,这些ID是分类的,但很好distributed@Chris这正是我想要的。但我似乎找不到任何统计模型/方法来帮助我区分c分类变量和连续变量当所讨论的列是数字时,这完全是在IBM Watson的后端完成的,当您输入原始数据时。它会自动将ACCT_ID等变量标识为分类变量,而收入和数量列为连续变量。应该有一种分类方法。我对您的问题感到困惑,因为你说你想在统计建模的帮助下“转换”吗“,但我觉得你只是想做
data$ACC_ID,我想要的不是你刚才提到的直接转换。这需要发生在后端,而不是我们这边。例如,查看ACC_ID的散点图,我们可能会发现所有内容都集中在指定范围内。因此,算法应该假设这不是一个数字,而是一个分类变量。另一个例子是,长度(唯一(data$PRBLT))/length(data$PRBLT)-如果这个度量值为5%(唯一值),我们可以假设数据是离散的,而不是continious@zelite我最终想要的是
data$ACC\ID您的问题“如何判断列是否是分类的”对我来说似乎很宽泛,或者更适合交叉验证——这通常取决于数据的上下文。一般规则可以是
length(unique(col))
,其中,
k
是一个调整变量。这为唯一值的数量与总值设置了一定的容差比率。但是,这将丢失唯一ID之类的东西,这些ID是分类的,但很好distributed@Chris这正是我想要的。但我似乎找不到任何统计模型/方法来帮助我区分categorical和一个连续变量当所讨论的列是数字时,这在IBM Watson的后端完成,当您输入原始数据时。它会自动将ACCT_ID等变量标识为分类变量,而收入和数量列为连续变量。应该有一种分类方法 ACC_ID PARENT_ID INDUSTRY_ID