How to read and bind column? - cbind

I have many files, but I can not find how to bind column.
For example, files are followed
[1.txt]
ID Score
A 1
B 2
C 3
D 4
[2.txt]
ID Score
A 2
B 2
C 3
D 4
[3.txt]
ID Score
A 4
B 4
C 5
D 3
I want to make
A 1 2 4
B 2 2 4
C 3 3 5
D 4 4 3

You could use cbind() as follows:
df_final <- cbind(cbind(df1, df2["Score"]), df3["Score"])
df_final
ID Score Score Score
1 A 1 2 4
2 B 2 2 4
3 C 3 3 5
4 D 4 4 3
Note that if you were trying to match IDs between data frames which did not coincidentally have the order you want, then you would be asking more for a database style join. In this case, R offers the merge() function from baseR.
Demo

Related

Windows partition by with condition

I have a Dataframe like this
Sys_id
Id
A
4
A
5
A
6
A
100
A
2
A
3
A
4
A
5
A
6
A
7
B
100
B
2
B
3
B
4
B
5
B
6
B
100
I want to fetch the Id's between Id==100 how can I get that by partition using sys_id
I want an output like this
Sys_id
Id
A
2
A
3
A
4
A
5
A
6
A
7
B
2
B
3
B
4
B
5
B
6
I tried using
Windowspec=Window.partitionBy("sys_id").orderBy("timestamp")
df=df.withColum("id",(df.id==100).cast("int")
df=df.withColumn("next_id",lead('id',1).over(Windowspec))
Is there any alternative way to get the answer?

MS Access Sum and Averaging Columns with Same Information as New Column

So I have the following chart here where I have columns:
a b c d
1 1 1 3
1 1 1 4
1 1 1 5
2 2 2 1
2 2 2 3
2 2 2 3
3 3 3 4
3 3 3 5
3 3 3 6
What I want to do is add and average column d where columns a,b,c contain the same values. How would I go about doing this?
I imagine it would be something like
Select SUM(Table.d) where a = b AND b = c AS e
Try this:
Select SUM(Table.d), AVG(Table.d) from Table Group by Table.a, Table.b, Table.c

MySQL filter out subset by group by

1A
a b c
1 1 6
1 1 7
2 1 8
2 2 2
2 2 9
B
a b c
1 1 7
2 2 9
I want to filter out a subset of A
a b c
1 1 6
2 2 2
I am intend to join two tables by group by column a, b
such that to select the value in column c is less than the c value in table B, which is the desired subset.
But don't know how to implement this.
Try this:
SELECT A.* FROM A INNER JOIN B
ON A.a=B.b AND A.c<B.c;
See MySQL Join Made Easy tutorial.

What is the best way to store mysql tree relation changes?

I found the solution of doing it, but I don't like it. Because each time we change one relation we must duplicate all tree records instead of one record. Who have any ideas how to do it in other way, or optimize my - you are welcome! Thanks!
The simpliest self to self tree table:
`categoies`
id|parent_id|label|
--+---------+------
1 NULL A
2 1 B
3 2 C
4 3 D
5 4 E
"A > B > C > D > E" nested set
I want to save all relation changes. I think that I need to do it in this way:
add table revisions
`revisions`
id | created |
---+----------------------
1 2015-02-02 09:00:00
2 2015-03-02 09:01:00
3 2015-04-02 09:00:00
4 2015-04-07 09:02:00
change table categories
`categoies`
id|label|
--+-------
1 A
2 B
3 C
4 D
5 E
add table category_revisions
`category_revisions`
id|rev_id|category_id|parent_category_id|
--+------+-----------+-------------------
1 1 1 null
2 1 2 1
3 1 3 2
4 1 4 3
5 1 5 4 # A > B > C > D > E
6 2 1 null
7 2 2 1
8 2 3 1
9 2 4 3
10 2 5 4 # A > B
# > C > D > E

Arranging Data according to their page number in reports

I got this problem regarding the pages the data is supposed to be placed.
This is how they look on the database.
CODE PAGE
---- ----
A 1
A 2
A 1
B 2
B 2
C 3
C 3
C 4
D 4
D 4
D 4
D 3
My desired output is
CODE PAGE
---- ----
A 1
A 1
A 1
B 2
B 2
C 3
C 3
C 3
D 4
D 4
D 4
D 4
How can I do this?
Works in SQL SERVER
select Code,Dense_Rank() Over (order by [Code]) Page from TableName
DEMO
like this:
select CODE,PAGE from <myTABLE>
order by PAGE,CODE