df = read.csv(url("https://bit.ly/2cb258h"), header=F) df <- df[c('V2','V3','V4','V5','V6','V7')] names(df) = c('price','date','postcode','type','newbuild','estate') df$date = as.POSIXct(df$date, '%Y-%m-%d %H:%M') df = subset(df, format(as.Date(date),"%Y")==2018) #df = subset(df, type=="S" | type=="T") df = subset(df, newbuild=="N") postcodes = c("^E1|^E2|^E3|^E4|^E5|^E6|^E7|^E8|^E9|^E10|^E11|^E12|^E13|^E14|^E15|^E16|^E17|^E18|^E20|^N1|^N2|^N3|^N4|^N5|^N6|^N7|^N8|^N9|^N10|^N11|^N12|^N13|^N14|^N15|^N16|^N17|^N18|^N19|^N20|^N21|^N22|^SE1|^SE2|^SE3|^SE4|^SE4|^SE5|^SE6|^SE7|^SE8|^SE7|^SE8|^SE9|^SE10|^SE11|^SE12|^SE13|^SE14|^SE15|^SE16|^SE17|^SE18|^SE19|^SE20|^SE21|^SE22|^SE23|^SE24|^SE25|^SE26|^SE27|^SE28|^SW1|^SW2|^SW3|^SW4|^SW4|^SW5|^SW6|^SW7|^SW8|^SW7|^SW8|^SW9|^SW10|^SW11|^SW12|^SW13|^SW14|^SW15|^SW16|^SW17|^SW18|^SW19|^SW20|^NW1|^NW2|^NW3|^NW4|^NW4|^NW5|^NW6|^NW7|^NW8|^NW7|^NW8|^NW9|^NW10|^NW11") df = subset(df, estate=="F") df = subset(df, grepl(postcodes, df$postcode)) subset(df, price > 250000 & price < 300000)