如果列表包含,则创建新列你好,
我有一个包含列名称的列表。如果列名存在于字符串列表中,我想创建一个新列。
这是我的代码。它可以工作,但会在循环中创建重复的列名 bc 。有什么建议吗?
Names Default To Here( 1 );
Clear Globals();
Clear Log();
dt = Current Data Table();
col_list = dt << Get Column Names( string );
idds = {52,54};
For( i = 1, i <= N items( idds ), i++,
If( Contains( col_list, Char( idds[i] ) ),
dt<<COLUMN></COLUMN> Thanks
<LINGO-LABS id="lingo-labs-529638" slang="en-US" mode="UPDATE"><LINGO-LABEL>自动化和脚本编写</LINGO-LABEL></LINGO-LABS>回复:如果列表包含,则创建新列您的代码将为 idds 列表中的每一列创建一个新列。此代码检查该列是否已经存在,如果不存在,它将创建它。
Names Default To Here( 1 );
Clear Globals();
Clear Log();
dt = Current Data Table();
col_list = dt << Get Column Names( string );
idds = {52, 54};
For( i = 1, i <= N Items( idds ), i++,
If(
Contains( col_list, Char( idds[i] ) ) & Try( Column( dt, "%_IDD" ) << get name, "" ) ==
"",
dt << New Column( "%_IDD", Numeric, "Continuous", Format( "Percent", 12, 2 ) )
)
);