Skip to content

Instantly share code, notes, and snippets.

@preinoso
Last active July 20, 2019 04:15
Show Gist options
  • Select an option

  • Save preinoso/250b22711ae0628d6514c42b3a4789a4 to your computer and use it in GitHub Desktop.

Select an option

Save preinoso/250b22711ae0628d6514c42b3a4789a4 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"nbformat_minor": 1,
"cells": [
{
"source": "### Librerias ",
"cell_type": "markdown",
"metadata": {
"collapsed": true
}
},
{
"execution_count": 2,
"cell_type": "code",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"name": "stderr",
"text": "Updating HTML index of packages in '.Library'\nMaking 'packages.html' ... done\nUpdating HTML index of packages in '.Library'\nMaking 'packages.html' ... done\nType 'citation(\"pROC\")' for a citation.\n\nAttaching package: \u2018pROC\u2019\n\nThe following objects are masked from \u2018package:stats\u2019:\n\n cov, smooth, var\n\nLoaded gbm 2.1.5\n"
}
],
"source": "install.packages(\"pROC\")\ninstall.packages(\"gbm\")\nlibrary(pROC)\nlibrary(gbm)"
},
{
"execution_count": 3,
"cell_type": "code",
"metadata": {},
"outputs": [],
"source": "###################### LIBRERIA DE EXTRACCI\u00d3N DE LA TABLA FINAL \n# The project token is an authorization token that is used to access project resources like data sources, connections, and used by platform APIs.\nlibrary(projectLib)\nproject <- projectLib::Project$new(projectId=\"fd0c30d9-25f1-4e3f-810c-416cd2079989\", projectToken=\"p-aaf4750349e501d6684581c9b05dadc1813abc2a\")\npc <- project$project_context\n\n###################### FUNCI\u00d3N PARA EXTRACCI\u00d3N \n\nsave_dataframe_to_os = function (dataframe, filename, project) {\n tc <- textConnection(\"conn\", \"w\")\n write.csv(dataframe, tc, row.names=FALSE)\n text.form <- paste(textConnectionValue(tc), collapse = '\\n')\n project$save_data(filename, text.form, overwrite=TRUE)\n close(tc)\n}"
},
{
"source": "### Bases de Datos",
"cell_type": "markdown",
"metadata": {}
},
{
"execution_count": 4,
"cell_type": "code",
"metadata": {},
"outputs": [],
"source": "credentials_1 <- list(endpoint = \"https://s3-api.us-geo.objectstorage.service.networklayer.com\",\napi_key = \"7VbMjlANwy05kvJO-rBWtl_0IxGW__Gx5jWXe1tVcfmt\",secret_key = \"ae83abf130a38301a8509caa1879f766f0478e8104c8b14d\",\niam_service_id = \"iam-ServiceId-445912c6-3e16-434b-ba90-04085dd26ce8\",access_key = \"5087361a91ad44b5b70df89baa658e1a\",\nbucket_name = \"churnwom-donotdelete-pr-kz9daakmsumeio\",file_name = \"PORT_OUT_20190408.csv\",iam_service_endpoint = \"https://iam.bluemix.net/oidc/token\")"
},
{
"execution_count": 5,
"cell_type": "code",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": "<table>\n<thead><tr><th scope=col>SEMANA</th><th scope=col>NUMERO_ABONADO</th><th scope=col>RUT</th><th scope=col>ANTIGUEDAD_CONTRATO</th><th scope=col>CARGO_FIJO_LINEA</th><th scope=col>FLAG_MANDATO</th><th scope=col>TOTAL_MB</th><th scope=col>TASA_ROAMING</th><th scope=col>THR_PROMEDIO</th><th scope=col>LATENCIA_PROMEDIO</th><th scope=col>\u22ef</th><th scope=col>FLAG_SS_PLAN_EQUIPO</th><th scope=col>FLAG_SS_RED</th><th scope=col>FLAG_LLAMADO_COMPETENCIA</th><th scope=col>FLAG_NPG</th><th scope=col>FLAG_INGRESO_COMP</th><th scope=col>TASA_LOST_PACK</th><th scope=col>TASA_STR</th><th scope=col>Q_CAMBIO_EQUIPO</th><th scope=col>EDAD</th><th scope=col>FLAG_PORT_OUT</th></tr></thead>\n<tbody>\n\t<tr><td>20181203 </td><td>56968518499</td><td>128009205 </td><td>18 </td><td>14989 </td><td>0 </td><td> 781.40525 </td><td>0.115868 </td><td> 0.751400 </td><td> 261.99260 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0.000085 </td><td>0.507176 </td><td>2 </td><td>42 </td><td>1 </td></tr>\n\t<tr><td>20181203 </td><td>56982229487</td><td>14349957K </td><td>10 </td><td>15990 </td><td>0 </td><td>8479.52778 </td><td>0.048890 </td><td>15.864631 </td><td> 38.85989 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0.349282 </td><td>0.799341 </td><td>0 </td><td>38 </td><td>1 </td></tr>\n\t<tr><td>20181203 </td><td>56990008364</td><td>108203188 </td><td>12 </td><td>12990 </td><td>0 </td><td> 600.80394 </td><td>0.001841 </td><td> 0.651990 </td><td>1462.74241 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0.763636 </td><td>0.347816 </td><td>1 </td><td>47 </td><td>1 </td></tr>\n\t<tr><td>20181203 </td><td>56948975327</td><td>197930462 </td><td> 4 </td><td> 9990 </td><td>0 </td><td>2373.29165 </td><td>0.013619 </td><td> 3.632975 </td><td> 109.94392 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0.472282 </td><td>0.857670 </td><td>0 </td><td>23 </td><td>1 </td></tr>\n\t<tr><td>20181203 </td><td>56957494857</td><td>078110732 </td><td>14 </td><td> 9990 </td><td>0 </td><td> 65.28698 </td><td>0.289044 </td><td> 0.002011 </td><td> 54.20869 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td><td>0 </td><td>0.787713 </td><td>0.000878 </td><td>0 </td><td>58 </td><td>1 </td></tr>\n\t<tr><td>20181203 </td><td>56978998072</td><td>165005546 </td><td>27 </td><td> 9990 </td><td>0 </td><td> 632.19657 </td><td>0.086881 </td><td> 0.005029 </td><td> 176.58665 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td><td>0 </td><td>0.617535 </td><td>0.395607 </td><td>2 </td><td>31 </td><td>1 </td></tr>\n</tbody>\n</table>\n",
"text/latex": "\\begin{tabular}{r|llllllllllllllllllllllll}\n SEMANA & NUMERO\\_ABONADO & RUT & ANTIGUEDAD\\_CONTRATO & CARGO\\_FIJO\\_LINEA & FLAG\\_MANDATO & TOTAL\\_MB & TASA\\_ROAMING & THR\\_PROMEDIO & LATENCIA\\_PROMEDIO & \u22ef & FLAG\\_SS\\_PLAN\\_EQUIPO & FLAG\\_SS\\_RED & FLAG\\_LLAMADO\\_COMPETENCIA & FLAG\\_NPG & FLAG\\_INGRESO\\_COMP & TASA\\_LOST\\_PACK & TASA\\_STR & Q\\_CAMBIO\\_EQUIPO & EDAD & FLAG\\_PORT\\_OUT\\\\\n\\hline\n\t 20181203 & 56968518499 & 128009205 & 18 & 14989 & 0 & 781.40525 & 0.115868 & 0.751400 & 261.99260 & \u22ef & 0 & 0 & 0 & 0 & 0 & 0.000085 & 0.507176 & 2 & 42 & 1 \\\\\n\t 20181203 & 56982229487 & 14349957K & 10 & 15990 & 0 & 8479.52778 & 0.048890 & 15.864631 & 38.85989 & \u22ef & 0 & 0 & 0 & 0 & 0 & 0.349282 & 0.799341 & 0 & 38 & 1 \\\\\n\t 20181203 & 56990008364 & 108203188 & 12 & 12990 & 0 & 600.80394 & 0.001841 & 0.651990 & 1462.74241 & \u22ef & 0 & 0 & 0 & 0 & 0 & 0.763636 & 0.347816 & 1 & 47 & 1 \\\\\n\t 20181203 & 56948975327 & 197930462 & 4 & 9990 & 0 & 2373.29165 & 0.013619 & 3.632975 & 109.94392 & \u22ef & 0 & 0 & 0 & 0 & 0 & 0.472282 & 0.857670 & 0 & 23 & 1 \\\\\n\t 20181203 & 56957494857 & 078110732 & 14 & 9990 & 0 & 65.28698 & 0.289044 & 0.002011 & 54.20869 & \u22ef & 0 & 0 & 1 & 1 & 0 & 0.787713 & 0.000878 & 0 & 58 & 1 \\\\\n\t 20181203 & 56978998072 & 165005546 & 27 & 9990 & 0 & 632.19657 & 0.086881 & 0.005029 & 176.58665 & \u22ef & 0 & 0 & 1 & 1 & 0 & 0.617535 & 0.395607 & 2 & 31 & 1 \\\\\n\\end{tabular}\n",
"text/markdown": "\nSEMANA | NUMERO_ABONADO | RUT | ANTIGUEDAD_CONTRATO | CARGO_FIJO_LINEA | FLAG_MANDATO | TOTAL_MB | TASA_ROAMING | THR_PROMEDIO | LATENCIA_PROMEDIO | \u22ef | FLAG_SS_PLAN_EQUIPO | FLAG_SS_RED | FLAG_LLAMADO_COMPETENCIA | FLAG_NPG | FLAG_INGRESO_COMP | TASA_LOST_PACK | TASA_STR | Q_CAMBIO_EQUIPO | EDAD | FLAG_PORT_OUT | \n|---|---|---|---|---|---|\n| 20181203 | 56968518499 | 128009205 | 18 | 14989 | 0 | 781.40525 | 0.115868 | 0.751400 | 261.99260 | \u22ef | 0 | 0 | 0 | 0 | 0 | 0.000085 | 0.507176 | 2 | 42 | 1 | \n| 20181203 | 56982229487 | 14349957K | 10 | 15990 | 0 | 8479.52778 | 0.048890 | 15.864631 | 38.85989 | \u22ef | 0 | 0 | 0 | 0 | 0 | 0.349282 | 0.799341 | 0 | 38 | 1 | \n| 20181203 | 56990008364 | 108203188 | 12 | 12990 | 0 | 600.80394 | 0.001841 | 0.651990 | 1462.74241 | \u22ef | 0 | 0 | 0 | 0 | 0 | 0.763636 | 0.347816 | 1 | 47 | 1 | \n| 20181203 | 56948975327 | 197930462 | 4 | 9990 | 0 | 2373.29165 | 0.013619 | 3.632975 | 109.94392 | \u22ef | 0 | 0 | 0 | 0 | 0 | 0.472282 | 0.857670 | 0 | 23 | 1 | \n| 20181203 | 56957494857 | 078110732 | 14 | 9990 | 0 | 65.28698 | 0.289044 | 0.002011 | 54.20869 | \u22ef | 0 | 0 | 1 | 1 | 0 | 0.787713 | 0.000878 | 0 | 58 | 1 | \n| 20181203 | 56978998072 | 165005546 | 27 | 9990 | 0 | 632.19657 | 0.086881 | 0.005029 | 176.58665 | \u22ef | 0 | 0 | 1 | 1 | 0 | 0.617535 | 0.395607 | 2 | 31 | 1 | \n\n\n",
"text/plain": " SEMANA NUMERO_ABONADO RUT ANTIGUEDAD_CONTRATO CARGO_FIJO_LINEA\n1 20181203 56968518499 128009205 18 14989 \n2 20181203 56982229487 14349957K 10 15990 \n3 20181203 56990008364 108203188 12 12990 \n4 20181203 56948975327 197930462 4 9990 \n5 20181203 56957494857 078110732 14 9990 \n6 20181203 56978998072 165005546 27 9990 \n FLAG_MANDATO TOTAL_MB TASA_ROAMING THR_PROMEDIO LATENCIA_PROMEDIO \u22ef\n1 0 781.40525 0.115868 0.751400 261.99260 \u22ef\n2 0 8479.52778 0.048890 15.864631 38.85989 \u22ef\n3 0 600.80394 0.001841 0.651990 1462.74241 \u22ef\n4 0 2373.29165 0.013619 3.632975 109.94392 \u22ef\n5 0 65.28698 0.289044 0.002011 54.20869 \u22ef\n6 0 632.19657 0.086881 0.005029 176.58665 \u22ef\n FLAG_SS_PLAN_EQUIPO FLAG_SS_RED FLAG_LLAMADO_COMPETENCIA FLAG_NPG\n1 0 0 0 0 \n2 0 0 0 0 \n3 0 0 0 0 \n4 0 0 0 0 \n5 0 0 1 1 \n6 0 0 1 1 \n FLAG_INGRESO_COMP TASA_LOST_PACK TASA_STR Q_CAMBIO_EQUIPO EDAD FLAG_PORT_OUT\n1 0 0.000085 0.507176 2 42 1 \n2 0 0.349282 0.799341 0 38 1 \n3 0 0.763636 0.347816 1 47 1 \n4 0 0.472282 0.857670 0 23 1 \n5 0 0.787713 0.000878 0 58 1 \n6 0 0.617535 0.395607 2 31 1 "
},
"metadata": {}
}
],
"source": "library(\"aws.s3\")\nSys.setenv(\"AWS_ACCESS_KEY_ID\" = \"5087361a91ad44b5b70df89baa658e1a\", \"AWS_SECRET_ACCESS_KEY\" = \"ae83abf130a38301a8509caa1879f766f0478e8104c8b14d\")\nurl <- \"s3-api.us-geo.objectstorage.service.networklayer.com\"\nbucket <- \"churnwom-donotdelete-pr-kz9daakmsumeio\"\nheaders <- list(`x-amz-content-sha256`=\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\")\n\nobj <- s3HTTP(verb = \"GET\",bucket = bucket,headers = headers,path = \"ENTRENAMIENTO_SEMANAL_3.csv\",key = Sys.getenv(\"AWS_ACCESS_KEY_ID\"),\nsecret = Sys.getenv(\"AWS_SECRET_ACCESS_KEY\"),check_region = FALSE,base_url = url)\n \nentrenamiento <- read.csv(text = rawToChar(obj$content),sep=';')\nhead(entrenamiento)"
},
{
"source": "### Modelado",
"cell_type": "markdown",
"metadata": {}
},
{
"execution_count": 6,
"cell_type": "code",
"metadata": {},
"outputs": [],
"source": "indexes = sample(1:nrow(entrenamiento), size=0.3*nrow(entrenamiento))\n\nTRAIN = entrenamiento[-indexes,]\nTEST = entrenamiento[indexes,]"
},
{
"execution_count": 7,
"cell_type": "code",
"metadata": {},
"outputs": [],
"source": "fit2 = gbm(FLAG_PORT_OUT ~\n ANTIGUEDAD_CONTRATO\n+CARGO_FIJO_LINEA\n+as.factor(FLAG_MANDATO) \n+TOTAL_MB \n+TASA_ROAMING \n+THR_PROMEDIO \n+LATENCIA_PROMEDIO \n+Q_CELDAS \n+Q_LLAMADAS\n+MOU \n+as.factor(FLAG_SS_FACT_SUSP) \n+as.factor(FLAG_SS_PLAN_EQUIPO) \n+as.factor(FLAG_SS_RED) \n#+as.factor(FLAG_LLAMADO_COMPETENCIA) \n#+as.factor(FLAG_NPG) \n+as.factor(FLAG_INGRESO_COMP )\n+TASA_LOST_PACK\n+TASA_STR \n+Q_CAMBIO_EQUIPO \n+EDAD \n ,data = TRAIN,distribution = \"bernoulli\",n.trees = 1000,\n shrinkage = 0.01, interaction.depth = 4)"
},
{
"source": "## Base de Testeo",
"cell_type": "markdown",
"metadata": {}
},
{
"execution_count": 8,
"cell_type": "code",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": "<table>\n<thead><tr><th scope=col>SEMANA</th><th scope=col>NUMERO_ABONADO</th><th scope=col>RUT</th><th scope=col>ANTIGUEDAD_CONTRATO</th><th scope=col>CARGO_FIJO_LINEA</th><th scope=col>FLAG_MANDATO</th><th scope=col>TOTAL_MB</th><th scope=col>TASA_ROAMING</th><th scope=col>THR_PROMEDIO</th><th scope=col>LATENCIA_PROMEDIO</th><th scope=col>\u22ef</th><th scope=col>FLAG_SS_PLAN_EQUIPO</th><th scope=col>FLAG_SS_RED</th><th scope=col>FLAG_LLAMADO_COMPETENCIA</th><th scope=col>FLAG_NPG</th><th scope=col>FLAG_INGRESO_COMP</th><th scope=col>TASA_LOST_PACK</th><th scope=col>TASA_STR</th><th scope=col>Q_CAMBIO_EQUIPO</th><th scope=col>EDAD</th><th scope=col>FLAG_PORT_OUT</th></tr></thead>\n<tbody>\n\t<tr><td>20190429 </td><td>56933112181</td><td>185100359 </td><td>16 </td><td>19990 </td><td>0 </td><td>4266.8182 </td><td>0.000299 </td><td>1.779807 </td><td>1430.20397 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0.057822 </td><td>0.442107 </td><td>1 </td><td>24 </td><td>0 </td></tr>\n\t<tr><td>20190429 </td><td>56932048954</td><td>112899545 </td><td>10 </td><td>16990 </td><td>1 </td><td> 189.2470 </td><td>0.081541 </td><td>1.649099 </td><td> 113.41967 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0.176404 </td><td>0.308590 </td><td>0 </td><td>51 </td><td>0 </td></tr>\n\t<tr><td>20190429 </td><td>56967505722</td><td>173058837 </td><td>25 </td><td> 9990 </td><td>0 </td><td>3004.3261 </td><td>0.008743 </td><td>2.386512 </td><td> 156.08037 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0.848048 </td><td>0.712460 </td><td>8 </td><td>28 </td><td>0 </td></tr>\n\t<tr><td>20190429 </td><td>56971863741</td><td>086403560 </td><td>31 </td><td> 9990 </td><td>0 </td><td> 979.7917 </td><td>0.107319 </td><td>0.151220 </td><td> 457.48336 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0.000459 </td><td>0.481094 </td><td>0 </td><td>58 </td><td>0 </td></tr>\n\t<tr><td>20190429 </td><td>56990827049</td><td>094724732 </td><td>16 </td><td> 9990 </td><td>0 </td><td>8718.9881 </td><td>0.000202 </td><td>2.308156 </td><td> 109.08010 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>1 </td><td>1 </td><td>0 </td><td>0.625338 </td><td>0.650853 </td><td>1 </td><td>54 </td><td>1 </td></tr>\n\t<tr><td>20190429 </td><td>56991254859</td><td>060099472 </td><td>22 </td><td>11990 </td><td>0 </td><td> 771.7368 </td><td>0.000446 </td><td>0.000003 </td><td> 65.33712 </td><td>\u22ef </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0 </td><td>0.609855 </td><td>0.104636 </td><td>1 </td><td>65 </td><td>0 </td></tr>\n</tbody>\n</table>\n",
"text/latex": "\\begin{tabular}{r|llllllllllllllllllllllll}\n SEMANA & NUMERO\\_ABONADO & RUT & ANTIGUEDAD\\_CONTRATO & CARGO\\_FIJO\\_LINEA & FLAG\\_MANDATO & TOTAL\\_MB & TASA\\_ROAMING & THR\\_PROMEDIO & LATENCIA\\_PROMEDIO & \u22ef & FLAG\\_SS\\_PLAN\\_EQUIPO & FLAG\\_SS\\_RED & FLAG\\_LLAMADO\\_COMPETENCIA & FLAG\\_NPG & FLAG\\_INGRESO\\_COMP & TASA\\_LOST\\_PACK & TASA\\_STR & Q\\_CAMBIO\\_EQUIPO & EDAD & FLAG\\_PORT\\_OUT\\\\\n\\hline\n\t 20190429 & 56933112181 & 185100359 & 16 & 19990 & 0 & 4266.8182 & 0.000299 & 1.779807 & 1430.20397 & \u22ef & 0 & 0 & 0 & 0 & 0 & 0.057822 & 0.442107 & 1 & 24 & 0 \\\\\n\t 20190429 & 56932048954 & 112899545 & 10 & 16990 & 1 & 189.2470 & 0.081541 & 1.649099 & 113.41967 & \u22ef & 0 & 0 & 0 & 0 & 0 & 0.176404 & 0.308590 & 0 & 51 & 0 \\\\\n\t 20190429 & 56967505722 & 173058837 & 25 & 9990 & 0 & 3004.3261 & 0.008743 & 2.386512 & 156.08037 & \u22ef & 0 & 0 & 0 & 0 & 0 & 0.848048 & 0.712460 & 8 & 28 & 0 \\\\\n\t 20190429 & 56971863741 & 086403560 & 31 & 9990 & 0 & 979.7917 & 0.107319 & 0.151220 & 457.48336 & \u22ef & 0 & 0 & 0 & 0 & 0 & 0.000459 & 0.481094 & 0 & 58 & 0 \\\\\n\t 20190429 & 56990827049 & 094724732 & 16 & 9990 & 0 & 8718.9881 & 0.000202 & 2.308156 & 109.08010 & \u22ef & 0 & 0 & 1 & 1 & 0 & 0.625338 & 0.650853 & 1 & 54 & 1 \\\\\n\t 20190429 & 56991254859 & 060099472 & 22 & 11990 & 0 & 771.7368 & 0.000446 & 0.000003 & 65.33712 & \u22ef & 0 & 0 & 0 & 0 & 0 & 0.609855 & 0.104636 & 1 & 65 & 0 \\\\\n\\end{tabular}\n",
"text/markdown": "\nSEMANA | NUMERO_ABONADO | RUT | ANTIGUEDAD_CONTRATO | CARGO_FIJO_LINEA | FLAG_MANDATO | TOTAL_MB | TASA_ROAMING | THR_PROMEDIO | LATENCIA_PROMEDIO | \u22ef | FLAG_SS_PLAN_EQUIPO | FLAG_SS_RED | FLAG_LLAMADO_COMPETENCIA | FLAG_NPG | FLAG_INGRESO_COMP | TASA_LOST_PACK | TASA_STR | Q_CAMBIO_EQUIPO | EDAD | FLAG_PORT_OUT | \n|---|---|---|---|---|---|\n| 20190429 | 56933112181 | 185100359 | 16 | 19990 | 0 | 4266.8182 | 0.000299 | 1.779807 | 1430.20397 | \u22ef | 0 | 0 | 0 | 0 | 0 | 0.057822 | 0.442107 | 1 | 24 | 0 | \n| 20190429 | 56932048954 | 112899545 | 10 | 16990 | 1 | 189.2470 | 0.081541 | 1.649099 | 113.41967 | \u22ef | 0 | 0 | 0 | 0 | 0 | 0.176404 | 0.308590 | 0 | 51 | 0 | \n| 20190429 | 56967505722 | 173058837 | 25 | 9990 | 0 | 3004.3261 | 0.008743 | 2.386512 | 156.08037 | \u22ef | 0 | 0 | 0 | 0 | 0 | 0.848048 | 0.712460 | 8 | 28 | 0 | \n| 20190429 | 56971863741 | 086403560 | 31 | 9990 | 0 | 979.7917 | 0.107319 | 0.151220 | 457.48336 | \u22ef | 0 | 0 | 0 | 0 | 0 | 0.000459 | 0.481094 | 0 | 58 | 0 | \n| 20190429 | 56990827049 | 094724732 | 16 | 9990 | 0 | 8718.9881 | 0.000202 | 2.308156 | 109.08010 | \u22ef | 0 | 0 | 1 | 1 | 0 | 0.625338 | 0.650853 | 1 | 54 | 1 | \n| 20190429 | 56991254859 | 060099472 | 22 | 11990 | 0 | 771.7368 | 0.000446 | 0.000003 | 65.33712 | \u22ef | 0 | 0 | 0 | 0 | 0 | 0.609855 | 0.104636 | 1 | 65 | 0 | \n\n\n",
"text/plain": " SEMANA NUMERO_ABONADO RUT ANTIGUEDAD_CONTRATO CARGO_FIJO_LINEA\n1 20190429 56933112181 185100359 16 19990 \n2 20190429 56932048954 112899545 10 16990 \n3 20190429 56967505722 173058837 25 9990 \n4 20190429 56971863741 086403560 31 9990 \n5 20190429 56990827049 094724732 16 9990 \n6 20190429 56991254859 060099472 22 11990 \n FLAG_MANDATO TOTAL_MB TASA_ROAMING THR_PROMEDIO LATENCIA_PROMEDIO \u22ef\n1 0 4266.8182 0.000299 1.779807 1430.20397 \u22ef\n2 1 189.2470 0.081541 1.649099 113.41967 \u22ef\n3 0 3004.3261 0.008743 2.386512 156.08037 \u22ef\n4 0 979.7917 0.107319 0.151220 457.48336 \u22ef\n5 0 8718.9881 0.000202 2.308156 109.08010 \u22ef\n6 0 771.7368 0.000446 0.000003 65.33712 \u22ef\n FLAG_SS_PLAN_EQUIPO FLAG_SS_RED FLAG_LLAMADO_COMPETENCIA FLAG_NPG\n1 0 0 0 0 \n2 0 0 0 0 \n3 0 0 0 0 \n4 0 0 0 0 \n5 0 0 1 1 \n6 0 0 0 0 \n FLAG_INGRESO_COMP TASA_LOST_PACK TASA_STR Q_CAMBIO_EQUIPO EDAD FLAG_PORT_OUT\n1 0 0.057822 0.442107 1 24 0 \n2 0 0.176404 0.308590 0 51 0 \n3 0 0.848048 0.712460 8 28 0 \n4 0 0.000459 0.481094 0 58 0 \n5 0 0.625338 0.650853 1 54 1 \n6 0 0.609855 0.104636 1 65 0 "
},
"metadata": {}
}
],
"source": "obj <- s3HTTP(verb = \"GET\",bucket = bucket,headers = headers,path = \"TESTEO_SEMANAL_3.csv\",key = Sys.getenv(\"AWS_ACCESS_KEY_ID\"),\nsecret = Sys.getenv(\"AWS_SECRET_ACCESS_KEY\"),check_region = FALSE,base_url = url)\n\nTest_mes <- read.csv(text = rawToChar(obj$content),sep=';')\nhead(Test_mes)"
},
{
"execution_count": 9,
"cell_type": "code",
"metadata": {},
"outputs": [],
"source": "A =cbind(Test_mes$NUMERO_ABONADO,Test_mes$FLAG_PORT_OUT,Test_mes$FLAG_LLAMADO_COMPETENCIA,Test_mes$FLAG_NPG,predict(fit2,Test_mes,n.trees = 1000))\ncolnames(A)= c(\"NUMERO_ABONADO\",\"IND_CHURN\",\"LLAMADO_CALL_CENTER\",\"NPG\",\"SCORE\")\nA1 = as.data.frame(A)\n\nQ=quantile(A1$SCORE,seq(0,1,0.1))\naux_decil <- sapply(1:nrow(A1), function (x){\n for(i_q in 1:(length(Q)-1) )\n if (A1$SCORE[x] > Q[i_q] & A1$SCORE[x] <= Q[i_q+1] ) {\n aux <- i_q-1 \n break\n } else {aux <- 0}\n return(aux)},simplify=T)\n\nA2 = cbind(A1,aux_decil)\ncolnames(A2) = c(colnames(A1),\"DECILE\")\nA3=as.data.frame(A2)"
},
{
"execution_count": 21,
"cell_type": "code",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": "<ol class=list-inline>\n\t<li>1</li>\n\t<li>275502</li>\n\t<li>551004</li>\n\t<li>826506</li>\n\t<li>1102008</li>\n\t<li>1377510</li>\n</ol>\n",
"text/latex": "\\begin{enumerate*}\n\\item 1\n\\item 275502\n\\item 551004\n\\item 826506\n\\item 1102008\n\\item 1377510\n\\end{enumerate*}\n",
"text/markdown": "1. 1\n2. 275502\n3. 551004\n4. 826506\n5. 1102008\n6. 1377510\n\n\n",
"text/plain": "[1] 1 275502 551004 826506 1102008 1377510"
},
"metadata": {}
}
],
"source": "CORTE = c(1,round(nrow(A3)*(1/5)),round(nrow(A3)*(2/5)),round(nrow(A3)*(3/5)),round(nrow(A3)*(4/5)),round(nrow(A3)*(5/5)))\nCORTE"
},
{
"execution_count": 26,
"cell_type": "code",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "Time difference of 12.87291 mins"
},
"metadata": {}
}
],
"source": "t1 = Sys.time()\nsave_dataframe_to_os(dataframe=A3[CORTE[1]:CORTE[2],], filename=\"SCORE_SEMANA_1.csv\", project)\nSys.time()-t1"
},
{
"execution_count": 27,
"cell_type": "code",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "Time difference of 12.28115 mins"
},
"metadata": {}
}
],
"source": "t1 = Sys.time()\nsave_dataframe_to_os(dataframe=A3[(CORTE[2]+1):CORTE[3],],filename=\"SCORE_SEMANA_2.csv\", project)\nSys.time()-t1"
},
{
"execution_count": 28,
"cell_type": "code",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "Time difference of 12.89193 mins"
},
"metadata": {}
}
],
"source": "t1 = Sys.time()\nsave_dataframe_to_os(dataframe=A3[(CORTE[3]+1):CORTE[4],],filename=\"SCORE_SEMANA_3.csv\", project)\nSys.time()-t1"
},
{
"execution_count": 29,
"cell_type": "code",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "Time difference of 12.63415 mins"
},
"metadata": {}
}
],
"source": "t1 = Sys.time()\nsave_dataframe_to_os(dataframe=A3[(CORTE[4]+1):CORTE[5],],filename=\"SCORE_SEMANA_4.csv\", project)\nSys.time()-t1"
},
{
"execution_count": null,
"cell_type": "code",
"metadata": {},
"outputs": [],
"source": "t1 = Sys.time()\nsave_dataframe_to_os(dataframe=A3[(CORTE[5]+1):CORTE[6],],filename=\"SCORE_SEMANA_5.csv\", project)\nSys.time()-t1"
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3.6",
"name": "python3",
"language": "python"
},
"language_info": {
"mimetype": "text/x-python",
"nbconvert_exporter": "python",
"version": "3.6.8",
"name": "python",
"file_extension": ".py",
"pygments_lexer": "ipython3",
"codemirror_mode": {
"version": 3,
"name": "ipython"
}
}
},
"nbformat": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment