извлечь из фрейма данных в R - PullRequest
0 голосов
/ 27 января 2019

Это мои основные данные:

1    Cl1  28    2750 2015-05-16 Marseille        S7
2    Cl1  27    2570 2015-06-03 Marseille        S7
3 Cl1000  24    1950 2015-07-05 Marseille       S17
4 Cl1000  17    1400 2016-01-09 Marseille       S17
5  Cl104  29    2680 2015-01-02  Grenoble        S3
6  Cl110  29    2660 2016-02-02    Calais        S2

Я хочу извлечь количества Qte за месяц 2015 года и типологии S1 и S2.

df<-sqldf("select Qte, typologie  from 
          where ='S1, S2'
          And data_achat.year = 2015'
          Group by date_achat.month  
           ")  

Я получаю Nullв результате.

Я также хочу визуализировать и сравнивать количества в месяц, какой график мне следует использовать?

1 Ответ

0 голосов
/ 28 января 2019

Если предположить, что требуется сумма Qte на Client и месяц для тех строк, для которых год равен 2015, а Typologie равен S1 или S2, мы предоставляем некоторые тестовые данныев примечании ниже, которое находится в воспроизводимой форме.

Так как не было строки, для которой год равен 2015, а Typologie равен S1 или S2 в данных, показанных в вопросе, мы добавилиСедьмая строка, для которой это имеет место.

Обратите внимание, что год - это первые 4 символа даты, а месяц - это 2 символа, начиная с позиции 6 даты.

library(sqldf)

sqldf("select Client, substr(Date_achat, 6, 2) month, sum(Qte) Qte, typologie
       from AllInfosClients 
       where Typologie in ('S1', 'S2') and substr(Date_achat, 1, 4) = '2015'
       group by 1, 2")

:

  Client month Qte Typologie
1  Cl110    02  29        S2

Примечание

Ввод в воспроизводимой форме:

Lines <- "
Client Qte Montant Date_achat     Ville Typologie
1    Cl1  28    2750 2015-05-16 Marseille        S7
2    Cl1  27    2570 2015-06-03 Marseille        S7
3 Cl1000  24    1950 2015-07-05 Marseille       S17
4 Cl1000  17    1400 2016-01-09 Marseille       S17
5  Cl104  29    2680 2015-01-02  Grenoble        S3
6  Cl110  29    2660 2016-02-02    Calais        S2
7  Cl110  29    2660 2015-02-02    Calais        S2"
AllInfosClients <- read.table(text = Lines)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...