我有一个大矢量
:nho
我需要保留以下值并用0覆盖所有其他值。
public class MainActivity extends AppCompatActivity {
private ListView marksixlist;
private Button mRandombtn, mCleanbtn;
private TextView mText;
private ArrayList<Integer> marksixnum = new ArrayList<Integer>();
private ArrayAdapter arrayAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
marksixlist = (ListView) findViewById(R.id.listview1);
mRandombtn = (Button) findViewById(R.id.randombtn);
mCleanbtn = (Button) findViewById(R.id.cleanbtn);
mText = (TextView) findViewById(R.id.items);
mRandombtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
for (int j = 1; j <= 6; j++) {
int random = (int) (Math.random()* 49+1);
marksixnum.add(random);
Collections.shuffle(marksixnum);
}
}
});
arrayAdapter = new ArrayAdapter<Integer>(this, R.layout.listitempage, marksixnum);
marksixlist.setAdapter(arrayAdapter);
Log.d("aaa", "The markssix is - " + marksixnum);
}
}
这是我到目前为止所尝试的:
LVector <- c(1:17649)
我尝试过这个
的变体Keeps <-c(1000,2000,3000,4000,5000,6000,7000,8000,9000,10000,11000,12000,13000,14000,15000,16000,17000)
和这个
LVector <- c(1:17649)
LVectorTEMP <- LVector
Keeps <-c(1000,2000,3000,4000,5000,6000,7000,8000,9000,10000,11000,12000,13000,14000,15000,16000,17000)
LVectorTEMP <- LVectorTEMP[! LVectorTEMP %in% Keeps]
### At this point I have created a vector which has all of the numbers I want to replace with 0.
但它们不起作用。
我确信有一种简单的方法可以做到这一点,但搜索还没有在今天早上显示答案。谢谢你的帮助!
答案 0 :(得分:1)
为了更好地了解正在发生的事情并且我认为它有效,我尝试过你的一次尝试的变体但是使用较小的矢量。
k <- c(2, 4, 6)
lv <- 1:10
lv[!lv %in% k] <- 0
lv
[1] 0 2 0 4 0 6 0 0 0 0
答案 1 :(得分:0)
尝试:
LVector <- ifelse(LVector %in% Keeps, LVector, 0)