将现有数据表的特定列中的值复制到另一个数据表,同时将所选行乘以常数我已经能够完成第一部分(复制),但我正在努力完成第二部分(乘法)。 任何方向都适用。 我的示例脚本如下。
Names Default To Here( 1 );
bcdt = Open( "$SAMPLE_DATA\Big Class.jmp", invisible ); //load a data-table
myNewdt = New Table( "Parameters Table", //create a new data-table
Add Rows(8),
New Column( "Parameter" ),
New Column( "H", Numeric),
New Column( "W" ),
);
Column(myNewdt, "Parameter")[1] = "A";
Column(myNewdt, "Parameter")[2] = "B";
Column(myNewdt, "Parameter")[3] = "C";
Column(myNewdt, "Parameter")[4] = "D";
Column(myNewdt, "Parameter")[5] = "E";
Column(myNewdt, "Parameter")[6] = "F";
Column(myNewdt, "Parameter")[7] = "G";
Column(myNewdt, "Parameter")[8] ="I";
vals = Column(bcdt, "height")[4::11]; //get the values to be copied. Note data type becomes "character"
//show (vals);
For( i = 1, i <= N Items(Vals), i++, //copy values
:H[i] = vals[i]
);
上面的脚本复制数据文件的“高度”列中的值BCDT到另一个数据文件的“H”列我的纽特。 但是,我想要例如“高度”列中的第 9 行和第 10 行条目BCDT乘以一个常数,例如 0.0001,并将其传递到另一个数据文件的“H”列的相同行(第 9 行和第 10 行)我的纽特。 其他行值将不加修改地复制。 如何实现这一目标?
质量和工艺工程回复:将现有数据表的特定列中的值复制到另一个数据表,同时将所选行乘以常量这是我处理这个问题的方法
Names Default To Here( 1 );
bcdt = Open( "$SAMPLE_DATA\Big Class.jmp", invisible ); //load a data-table
myNewdt = New Table( "Parameters Table", //create a new data-table
Add Rows(8),
New Column( "Parameter" ),
New Column( "H", Numeric),
New Column( "W" ),
);
Column(myNewdt, "Parameter")[1] = "A";
Column(myNewdt, "Parameter")[2] = "B";
Column(myNewdt, "Parameter")[3] = "C";
Column(myNewdt, "Parameter")[4] = "D";
Column(myNewdt, "Parameter")[5] = "E";
Column(myNewdt, "Parameter")[6] = "F";
Column(myNewdt, "Parameter")[7] = "G";
Column(myNewdt, "Parameter")[8] ="I";
bcdt:height[9] = bcdt:height[9] * .0001;
bcdt:height[10] = bcdt:height[10] * .0001;
vals = Column(bcdt, "height")[4::11]; //get the values to be copied. Note data type becomes "character"
myNewdt:H << set values(vals);
// or
//vals = Column(bcdt, "height")[4::11]; //get the values to be copied. Note data type becomes "character"
//vals[6] = vals[6] * .0001;
//vals[7] = vals[7] * .0001;
//myNewdt:H << set values(vals);
// or
//vals = Column(bcdt, "height")[4::11]; //get the values to be copied. Note data type becomes "character"
//myNewdt:H << set values(vals);
//myNewdt:height[6] = myNewdt:height[6] * .0001;
//myNewdt:height[7] = myNewdt:height[7] * .0001;
回复:将现有数据表的特定列中的值复制到另一个数据表,同时将所选行乘以常量嗨尼奥
我的脚本作为附件。 希望它可以帮助您解决问题。