如何用不同的值填充组合框?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />你好
使用列的不同值填充组合框的最佳方法是什么? 我希望能够提示用户他/她想要分析哪些数据(在本例中为零件号),然后根据他的选择,代码将创建一个仅包含所选值的新子集表。
我设想代码是这样的:
价值观= :列名在这里<<获取不同的值;
新窗户( “例子” ,
CB =组合框(价值观) ,
按钮盒( “好的” )
) ;
这里有一些代码来创建子集表......
有谁知道这样做的最佳做法是什么?
谢谢
如何用不同的值填充组合框?我从未在数字列上尝试过该函数。有趣的结果。
我对关联数组与汇总进行了一些性能测试,以确定唯一值,结果相当均匀。作为示例,我使用了一个包含 180,000 行的表。两种方法都需要 4 秒来确定 6 列的唯一值。
回复:如何用不同的值填充组合框?不错的功能! 如果列是数字,那么 Summarize() 实际上比 Associative Array() 方法更好。 Summarize 在数字级别两边加上双引号,而 AA<
对于其他需要数字而不是 Char(number) 的用途,AA 方法可能是更好的选择。 AA 方法也是通用的,因为它不限于列,并且接受多种数据类型作为列表项(矩阵、表达式...)。
回复:如何用不同的值填充组合框?组合框似乎因空白条目而变得混乱。如果您使用列表框,它可以工作,尽管其中一个条目是空白的,这是您不希望的。
这是我用来从列中获取唯一值的函数,它使用总结命令:
//------------------------------------------------ ----------------------------
/* 函数名获取唯一值
描述:获取列的唯一值。例如:
适应症
------------
AAAAA
BBBB
AAAAA
中交建
中交建
unique_list = 获取唯一值(:指示)
将返回 {"AAAAA", "BBBBB", "CCCCC"}
论据:
dtcol 列描述符来计算唯一值
*/
获得独特的价值=功能( { dtcol } , {默认本地} ,
// Eval/expr 技巧来让它工作。
评估(评估表达式(
总结(唯一列表=经过(表达式( dtcol )))))) ;
唯一列表;
) ; // 最后获取唯一值
这是一个展示如何使用该函数的示例。我事先阅读了“汽车物理数据”表,并删除了“国家/地区”列中的一些条目。
dt =打开( “$sample_data\汽车物理数据.jmp” ) ;
国家列表=获得独特的价值(柱子( dt , “国家” ) ) ;
为了(我=尼特姆斯(国家列表) ,我> 0 ,我--,
打印(我) ;
如果(国家列表[我] == ”” ,
从......中去除(国家列表,我) ;
)
) ;
西北1 =新窗户( “例子” ,
CB =组合框(国家列表) ,
按钮盒( “好的” ,西北1 <<关闭窗口)
) ;
西北2 =新窗户( “例子” ,
磅=列表框(国家列表) ,
按钮盒( “好的” ,西北2 <<关闭窗口)
) ;
我认为最好的办法是将空白删除添加到函数中。
如何用不同的值填充组合框?我使用忽略所有空白单元格的 For 循环让它工作。 这是任何好奇的人的代码:
部分数组=关联数组() ;
为了(我= 1 ,我<= N 行( dt ) ,我++,
如果(部分[我] != ”” ,
部分数组<<插入(部分[我] )
)
) ;
部分数组=部分数组<<获取钥匙;
如何用不同的值填充组合框?我发现当列中有空白单元格时会发生这种情况。 如果删除空白单元格,则效果很好。 知道为什么它不适用于空白单元格吗?
如何用不同的值填充组合框?谢谢。 这正是我想要的。
但是,这不适用于我的桌子。 如果我将您的代码与示例表“Big Class”一起使用,它就可以正常工作。 但是,如果我用我的数据替换表格,则组合框将为空白。 有什么想法为什么吗? 更改列会导致组合框的宽度发生变化,但它仍然是空的。 我检查了列属性,它们与 Bog Class 中的相同。
有任何想法吗?
再次感谢
如何用不同的值填充组合框?A最近的 JMP 博客文章提出了获取唯一值列表的不同方法。 我从那里学到的一种方法是使用关联数组。
dt =打开( “$SAMPLE_DATA/大类.jmp” ) ;
伙伴=关联数组( ( :性别<<获取值) ) <<获取钥匙;
新窗户( “例子” , CB =组合框( (伙伴) ) ,按钮盒( “好的” ) ) ;