Picking Out Elements Using a Logical List
08-12-2015, 03:05 AM
Post: #1
 Eddie W. Shore Senior Member Posts: 1,588 Joined: Dec 2013
Picking Out Elements Using a Logical List
I am taking an online class in R Programming language (http://www.edx.org), having a great time. The program BOOLLIST is based on the ability in R to pick out elements using logical elements (TRUE, FALSE).

Example (in R):

vector <- [2, 3, 4, 5]
vector[ c(TRUE, TRUE, FALSE, TRUE) ] returns [2, 3, 5]

The logical vector doesn’t have to be same length as the source vector. If the logical vector has elements than the source vector.

vector <- [1, 2, 3, 4, 5, 6]
vector[ c(TRUE, FALSE, TRUE, FALSE, TRUE, FALSE) ] returns [1, 3, 5]
vector[ c(TRUE, FALSE) ] returns [1, 3, 5] (TRUE, FALSE pattern recycles)

Program BOOLLIST:

Input: BOOLLIST(source list, logical list)

Notes: Use list brackets { }. For the logical list, use 1 for TRUE and 0 for FALSE.

Code:
EXPORT BOOLLIST(LA, LB) BEGIN LOCAL LC, n, s, k, j; //  Initialization LC≔{ }; j≔1; s≔SIZE(LA); b≔SIZE(LB); // Process FOR k FROM 1 TO s DO   IF LB(j)==1 THEN LC≔CONCAT(LC,LA(k)); END; j≔j+1; IF j>n THEN j≔1; END; END; RETURN LC; END;

Examples:

In addition to the examples above that can be tried with BOOLLIST:

BOOLLIST( {4,2,3,6}, {1,0,0,1} ) returns {4, 6}

BOOLLIST( {3,9,6,-1,6}, {1,0} ) returns {3, 6, 6}

http://edspi31415.blogspot.com/2015/08/h...using.html
 « Next Oldest | Next Newest »

 Messages In This Thread Picking Out Elements Using a Logical List - Eddie W. Shore - 08-12-2015 03:05 AM RE: Picking Out Elements Using a Logical List - Didier Lachieze - 08-12-2015, 10:40 AM RE: Picking Out Elements Using a Logical List - roadrunner - 08-16-2015, 11:53 AM RE: Picking Out Elements Using a Logical List - roadrunner - 08-16-2015, 11:40 PM RE: Picking Out Elements Using a Logical List - Didier Lachieze - 08-17-2015, 10:56 AM RE: Picking Out Elements Using a Logical List - roadrunner - 08-18-2015, 12:13 PM RE: Picking Out Elements Using a Logical List - Thomas Klemm - 08-17-2015, 11:32 AM

User(s) browsing this thread: 1 Guest(s)