03.01 Big Data Analytics Com R e Azure

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 24

www.datascienceacademy.com.

br



Big Data Analytics Com R e Microsoft Azure
Machine Learning


Base de Conhecimento




Big Data Analytics com R e Microsoft Azure Machine Learning



Base de conhecimento do curso Big Data Analytics com R e Microsoft Azure Machine Learnig.

Versão Data Log de alterações
1.0 23/05/2017 Criação do documento


Data Science Academy 2


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning


1. Link para download dos datasets:

http://datascienceacademy.com.br/blog/aluno/RFundamentos/Datasets/


2. No video "Big Data na Prática" foi utilizado inicialmente "Brazil" para o refinamento do
subset. Quando não conhecemos os valores dentro do arquivo csv, qual seria a melhor
prática de conhecer esse arquivo sem ter que carregá-lo por inteiro?

A melhor prática é ter em mãos o dicionário de dados do dataset com o qual você está
trabalhando. Um dicionário de dados vai descrever o que existe em cada coluna do dataset. Isso
normalmente é feito por quem coleta os dados.


3. A função "sample()" interage com valores indisponíveis. Seria possível utilizar outras
referências sem ser o NA? Por que no exemplo do video a função selecionou posições
aleatórias para atribuir o valor NA?

Quando usamos a função sample() estamos trabalhando com valores aleatórios, para evitar
interferir no resultado final do processo de manipulação de dados.


4. Gostaria de Saber se o R ou o próprio MySQL conseguem acessar o SAP gui por script.
Hoje trabalho em uma empresa que utiliza SAP e extraímos relatórios do SAP via macros
do excel/access, sabe informar se o R consegue fazer algo similar?

O R conecta em quase todos os bancos de dados e podemos usar conexão ODBC para isso
também. Não sei dizer se o R pode conectar ao SAP Gui, mas ao banco de dados sim (se a
equipe do SAP deixar, o que acho pouco provável). Você também pode solicitar a cópia dos
dados para uma área intermediária, tipo uma área de stage e acessar os dados com o R.


5. Eu abri uma conta no github e usei o RMarkdown para criar um Website, consegui fazer
direitinho, pois no R consigo visualizar a páginas com algumas informações que coloquei a
titulo de experimento, eu pretendo colocar todos os meus projetos nesta página e fazer
um portfólio bem legal. Consegui então dar um push de tudo para o Git, porém ao acessar
a página pelo domínio do github https://xxx.github.io/, não consigo visualizar a página
que criei, aparece somente a mensagem que coloquei no github, my website. Como faço
para aparecer a minha página?

Dá uma olhada neste link: http://jmcglone.com/guides/github-pages/. Tem um guia completo
de como montar a página no Github. Veja se não faltou algum passo.

Data Science Academy 3


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

6. Alguém conhece um método fácil de abrir os arquivos baixados (.R, outros) com a
acentuação correta? Ex: "Plot de Correlação usando Método", é assim que aparece
toda vez que abro um arquivo aqui no Windows, acredito por ele ter sido criado no Mac a
acentuação é incompatível. Não tem problema se ninguém souber, pois isso não impede a
execução dos scripts, é só uma questão estética mesmo.

Após aberto, salve o arquivo em File => save with encoding => UTF8 (marcar “set as default
encoding for source files”) ... depois verifica se corrigiu. Aqui segue a referência:
https://support.rstudio.com/hc/en-us/articles/200532197-Character-Encoding.


7. Estou com uma dificuldade. Quando usar modelo classificação e quando usar regressão.

Você usa classificação quando precisa prever a categoria ou classe. Por exemplo: prever se um
vinho pertence a classe A ou B. Você usa regressão, quando precisa prever valores numéricos,
como por exemplo, prever o valor de uma casa, em função do seu tamanho. Lembrando que a
Formação é uma sequência, ok? O aluno vai estudar Machine Learning de forma exaustiva ao
longo dos cursos seguintes da Formação. O objetivo aqui é apenas uma breve introdução


8. Ao criar minha app no Twitter há um campo em que pede um website eu poderia colocar
o website do DSA?

Esse campo é para preencher com o endereço do site onde sua app supostamente será
publicada. Pode usar o endereço da DSA.


9. Eu gostaria de tirar uma dúvida sobre a funcionalidade do R em categorizar campos nos
dataframes. Nos exemplos citados foram apresentadas as colunas etnias e sexo
convertidas automaticamente em fatores. O R categoriza por ter um determinado grupo
de valores identificados com possível disposição para categorização? Ou o R sempre irá
analisar a densidade e seletividade de todas colunas? Sendo assim, independente da
coluna ou valores, se existir uma seletividade minima e uma alta densidade sempre será
convertido como fator?

Conceitualmente, fatores são variáveis que no R assumem um número limitado de valores
diferentes. Tais variáveis são referidas como variáveis categóricas frequentemente e um dos
usos mais importantes de fatores está na modelagem estatística. Fatores em R são
armazenados como um vetor de valores de números inteiros com um conjunto de caracteres
correspondentes. Fatores representam uma maneira muito eficiente para armazenar valores de
caracteres, pois cada caracter único é armazenado apenas uma vez e os dados em si são
armazenados como um vetor de inteiros. A conversão dos dados para fator não segue nenhuma
regra complexa no R. Isso é definido nos parâmetros da função sendo usada para ler os dados
(read.csv, read.table, etc...). Ajustando o parâmetro stringsAsFactors, definimos se o R deve ou

Data Science Academy 4


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

não fazer a conversão. Se não definimos o parâmetro explicitamente, é usado o valor default.
Mas nem sempre o R acerta nesta classificação em fator ou não, e por isso sempre devemos
checar se os dados foram carregados conforme esperávamos.


10. No início do curso eu havia instalado erroneamente o R 3.3.3, agora que mudei para a
versão R 3.3.2, toda vez que eu carrego uma biblioteca nova aparece o seguinte: Warning
message: package class was built under R version 3.3.3. Isto significa que o pacote foi
desenvolvido para a versão 3.3.3 ou esse downgrade que fiz não resolveu?

Primeiro a versão 3.3.3 não é necessariamente errada. Embora todo o curso tenha sido criado
com as versões 3.3.1 e 3.3.2, a grande maioria dos scripts deve funcionar sem problemas com a
versão 3.3.3. Em Maio de 2017 vamos atualizar todo o curso para a versão 3.4 do R lançada
semana passada. A mensagem de warning indica que o pacote ainda não foi atualizado para a
versão mais recente do R, mas ainda assim deve funcionar, a menos que algo muito específico
esteja sendo usado. As mensagens de warning não impedem a execução do script.


11. Ao clicar na avaliação final do curso, aparece a mensagem "Você precisa completar mais
10 unidades". Seriam os Quizes? Ao abrir os Quizes novamente, não estão preenchidos
como eu havia feito a cada término de capítulo.

Já consegui! Eu pensei que o problema era no Quiz, que não grava as minhas respostas,
deixando as questões em branco após acessar outro item. O problema é porque eu não tinha
aberto vídeos e pdf's sobre sistema operacional, e instalações no Mac e Linux, pois já tinha visto
nos cursos gratuitos. Já marquei esses itens e consegui ver a tela da avaliação.


12. Não estou conseguindo exibir a wordcloud. Aparece a seguinte mensagem de erro
(alerta):
Warning message:
In wordcloud(dfCorpus, max.words = 100, random.order = FALSE) :
listlanguage could not be fit on page. It will not be plotted.

A mensagem indica que a escala não está adequada aos dados que você está tentando plotar.
Use o parâmetro scale = c(4, 0.2) dentro da função wordcloud e ajuste conforme necessário.
Você também pode manipular o parâmetro max.words e reduzir para 50 por exemplo


13. Acho que não entendi direito o objetivo dos Projetos. Eles são uma demonstração? Ou
além disso nós teremos de fazer alguma entrega ao final do curso? Posso ter me
esquecido de alguma parte já explicado em vídeo, mas gostaria de relembrar se for o
caso.

Data Science Academy 5


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

São 26 projetos ao longo de todos os cursos da Formação e 1 projeto final. Os 26 projetos,
deixamos o aluno livre para usar da forma que achar melhor. Você pode ler a especificação,
buscar uma solução e depois comparar com a solução proposta. É uma forma de compreender
o processo de análise de dados como um todo. Esses projetos não precisam ser entregues. Já o
projeto final, o aluno deve selecionar um dos temas propostos ao final deste curso e entregar
seu projeto. Para esse não será apresentado solução e sim o feedback. Todos esses detalhes
estão no vídeo de introdução do curso no Capítulo 1.


14. No penúltimo vídeo do cap. 9, o script só executou com sucesso no Azure após
acrescentar esta linha: library(tidyr). Antes disso aparecia o erro que não encontrava a
função spread().

A função spread realmente precisa do pacote carregado. Verifique se os pacotes dependência
foram instalados.


15. Estou com dúvidas na aula de RSQLite. Não é necessário instalar o SQLite no PC, apenas o
pacote RSQLite? Em que diretório foi salvo "exemplo.db"?

Não é necessário instalar o SQLite, apenas o pacote no R, Python, etc...o Arquivo é salvo no seu
diretório de trabalho no RStudio.


16. No capítulo 4 sobre conectar o mongodb com o R eu não consigo carregar o banco de
dados no mongodb, estou fazendo da seguinte forma:

1° - C:\Program Files\MongoDB\Server\3.4\bin>

# inicializo o mondodb
2° - C:\Program Files\MongoDB\Server\3.4\bin>mongod

# abro outro prompt e colo o endereço que vc passou
3° - C:\Program Files\MongoDB\Server\3.4\bin>mongoimport --db users --collection contatos
--file opt/DSA/RFundamentos/Parte3/zips.json

2017-04-17T15:27:15.986-0300 Failed: open opt\DSA\RFundamentos\Parte3\zips.json: O
sistema não pode encontrar o caminho especificado.
2017-04-17T15:27:16.019-0300 imported 0 documents

A documentação do MongoDB não fala nada sobre o uso de url para importar o arquivo, mas
deveria funcionar. Entretanto, creio que seja melhor seguir a sintaxe sugerida na
documentação, essa aqui: mongoimport --db users --collection contacts --file C:\DSA\zips.json.
Baixe o arquivo, copie em um diretório e veja se assim funciona sem problemas.

Data Science Academy 6


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning



17. Em Análise de Regressão, parte 2/3, o Tempo Gasto em Estudo é variável Independente e
a Nota no Exame final é variável Dependente, pois a Nota do Exame tem dependencia do
Tempo Gasto de Estudo (entre outras). Sendo assim, o Tempo Gasto é domínio e a Nota
do Exame é imagem na função de regressão. Certo? Estou levantando esta questão pois
no vídeo o Tempo Gasto está colocado como Y (dependente) e a Nota como X
(independente), fazendo que com a equação da função de regressão seja diferente da
situação inversa. Agradeço sua atenção, aguardo suas observações e parabenizo o curso,
que é encantador e muito didático.

Peço que desconsiderem o comentário! Minha interpretação foi errada. O vídeo 3/3 esclarece
tudo. O objetivo é a partir do Nota desejada (x: 98) obter o Tempo de Estudo (y: 52,22).


18. Na página 17 do Projeto01, em Classificando emoção, logo a primeira linha não consigo
executar a função classify_emotion. A única library que consegui instalar foi a sentimentr,
e pelo que encontrei na Internet a library correta é a sentiment, é isso mesmo? Estou
usando R version 3.3.3 (2017-03-06).

Todos os scripts do curso foram desenvolvidos sobre as versões 3.3.1 e 3.3.2 do R e ainda não
homologamos a versão 3.3.3, o que vai começar a ser feito agora em Maio/2017. Pode haver
algum comportamento diferente nesta versão. Quanto ao pacote, ele se chama sentimet e foi
fornecido junto com os arquivos do curso, além do pacote que deve ser usado como
dependência. Esse pacote foi descontinuado e não está mais disponível no repositório ativo do
CRAN e sim no Archive. O pacote ainda pode ser utilizado normalmente e optamos por trazê-lo
pois ele é excelente. O procedimento de instalação está no próprio script do projeto. Caso
esteja com dificuldade de instalação, coloque aqui a mensagem de erro. Se estiver usando
Windows, você precisa instalar o RTools e o pacote devtools.


19. Sobre coeficiente de correlação: só para entender melhor, no exemplo abaixo o resultado
1 significa forte associação positiva entre as variáveis, isto é, eu entendi que a variável
n_paes_comprados tem tudo a ver com a variável valor_a_pagar, correto?

n_paes_comprados = c(2,5,12,8,5,4,3,8,9,15)
valor_a_pagar = c(0.5,1.25,3,2,1.25,1,0.75,2,2.25,3.75)

Sim, a correlação indica a relação entre duas variáveis. Quanto maior o valor, maior a
correlação, o que significa que o comportamento de uma variável influencia no comportamento
de outra variável, o que não quer dizer que tenhamos causalidade (ou seja, precisamos de mais
dados para provar esta relação). Mas a correlação é uma boa indicação de como duas variáveis
se relacionam.

Data Science Academy 7


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning


20. Qual o site que preciso desbloquear no firewall para que o R-studio possa baixar pacotes
sem problemas?

https://cran.rstudio.com.


21. Estou tentando instalar a VM linux Ubuntu, mas está dando erro. Descobri que o
Windows 10 Home Single Language não possui o Hyper-V, que permite usar virtualização.
Pergunto: há como driblar esta limitação com o Oracle VM Box ou precisarei atualizar o
windows para usar o recurso ?

O Windows 10 Home não permite você usar o Hyper-V, mas você pode instalar o Oracle Virtual
Box. Você habilitou a virtualização na BIOS do computador? Pode ser isso a causa do erro. Com
Windows 10 Home você não consegue usar o Docker, que requer o Hyper-V instalado,
disponível apenas no Windows 10 Pro.


22. A mensagem de erro é: "This kernel requires an x86-64 CPU, but only detected an i686
CPU. Unable to boot - please use a kernel appropriate for your CPU." Descobri que a
virtualização está habilitada em minha máquina, via Windows, configuração do sistema,
embora não possua o Hyper-V . Quando instalei o Oracle VM Box, não apareceu nenhuma
opção de sistema de 64 bits (apenas 32). Como devo proceder ?

A mensagem citada acima ocorre quando a virtualização não está habilitada na BIOS. Pelo visto,
foi habilitado. Não use a opção try e sim instale o Ubuntu. No capítulo 2 do curso de Engenharia
de Dados com Hadoop e Spark tem um manual com 275 páginas e as primeiras seções do
manual mostram passo a passo como montar uma máquina virtual. Lá usamos CentOS, mas o
procedimento é semelhante com Ubuntu.


23. Na aula de manipulação de arquivos do Excel somos instruídos a instalar diversos pacotes
como rJava, xlsx, XLConnect e outros. Tentei aqui de diversas formas e nenhuma
funcionava, falava que o pacote não está disponível para o R 3.3.3. Depois de muito
buscar e soluções muito complicadas, achei uma bem simples pra quem tem esse mesmo
problema, é só adicionar "repos='http://cran.us.r-project.org'" no lugar de type=
"source". Exemplo: install.packages("rJava", repos='http://cran.us.r-project.org').
Tentando entender melhor as funcionalidades do R agora me pergunto, por que isso
acontece?!

Sua mensagem tem muitas questões. Primeiro parabéns pelo trabalho de pesquisa, isso com
certeza contribui muito para seu aprendizado. Todos os scripts do curso foram criados e
testados nas versões 3.3.1 e 3.3.2. A versão 3.3.3 é muito recente, acabou de ser lançada e
muitos pacotes ainda não foram atualizados para esta versão. Agora no mês de Maio/2017,

Data Science Academy 8


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

vamos começar a homologação dos scripts para a versão 3.4.0, mas recomendo por enquanto
usar a versão 3.3.2 (aqui está o link de todas as versões do R: https://cran.r-
project.org/bin/windows/base/old/). Com relação aos pacotes de manipulação de planilhas
excel, eles são mesmo complicados, pois manipular arquivos xls e xlsx não é tarefa simples.
Outro dia até brinquei com um aluno dizendo que depois de aprender a manipular arquivos do
excel no R, ele vai entender porque todo mundo prefere arquivos csv, que são muito mais
fáceis. Mas trouxemos esses pacotes para que o aluno saiba que é possível e eventualmente
use-os em seus projetos. Quanto à instalação dos pacotes, eu fiz sessão remota com mais de 25
alunos que estavam com problemas na instalação e em 100% dos casos o problema era
configuração incorreta das variáveis de ambiente (por esta razão criamos os vídeos
"Conhecendo seu Sistema Operacional", ao final do capítulo 1). Instalando e configurando o
Java e configurando a variável de ambiente JAVA_HOME apontando para c:\pasta_java, a
instalação dos pacotes ocorre sem problemas. Para usuários do Windows, é preciso ter também
o RTools (https://cran.r-project.org/bin/windows/Rtools/). Na instrução que você usou, você
instalou diretamente o pacote, sem compilar o código fonte. Para compilar o código, é preciso
ter o RTools instalado. Se a instalação ocorreu sem problemas, é provável que a configuração
do Java na sua máquina esteja correta. Qualquer dúvida, estamos por aqui.


24. Uma dica: para importar o arquivo titanic.csv no Windows usando MySQL, primeiro edite
o arquivo

C:\ProgramData\MySQL\MySQL Server 5.7\my.ini

Substitua a linha:

secure-file-priv="C:/ProgramData/MySQL/MySQL Server 5.7/Uploads"

Para:

secure-file-priv=""

Reinicie o serviço MySql57. Então coloque o arquivo titanic.csv no diretório

C:\ProgramData\MySQL\MySQL Server 5.7\Uploads\titanic.csv

Só depois execute:

LOAD DATA INFILE 'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/titanic.csv' INTO
TABLE titanic FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\r\n'
IGNORE 1 ROWS;

Note que os caracteres de fim de linha no Windows deve ser \r\n

Data Science Academy 9


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

Se usar: LOAD LOCAL DATA INFILE, o efeito é o mesmo.


25. Olá pessoal, para quem não conseguiu instalar o pacote RMongoDB, só consegui com este
comando que encontrei nesta página:
http://143.107.212.50/web/packages/rmongodb/README.html

install_github("mongosoup/rmongodb")
library(rmongodb)

O que ocorreu, é que 1 mês depois que lançamos o curso, o pacote RMongoDB foi
descontinuado (o que é uma pena, pois o pacote é excelente). Quando isso ocorre, o pacote sai
do repositório ativo do CRAN e passa para o archive. O pacote ainda pode ser usado
normalmente, mas nesse caso é preciso buscar formas alternativas de instalação. O que você
fez está correto e poderia também baixar o arquivo do archive e instalar com o mesmo
comando.
Aqui está o archive do pacote: https://cran.r-project.org/src/contrib/Archive/rmongodb/.


26. Ao tentar conectar ao MySQL com o R, aparece a seguinte msg:

Error in .local(drv, ...) :
Failed to connect to database: Error: Lost connection to MySQL server at 'reading
authorization packet', system error: 10060

String de conexão:
con = dbConnect(MySQL(), user = "root", password = "dsa1234", dbname = "titanicDB", host
= "localhost")

Fiz uma pesquisa e parece que outros usuários começaram a ter o mesmo problema com a
versão mais nova do pacote e um bug foi reportado. A solução proposta é usar uma versão
anterior do pacote. Aqui está o link com esta sugestão e o comando necessário:
http://stackoverflow.com/questions/43073782/rmysql-system-error-10060. Poderia tentar o
procedimento? Me avise se precisar de ajuda e também sobre o resultado. consegui instalar a
versão anterior do pacote, mas somente após instalar o Rtools 34. Fica a dica pra quem tiver o
mesmo problema. Muito obrigada pela pesquisa realizada, me ajudou muito, conexão com
MySql resolvida!!!


28. Segue a mensagem de erro quando tento carregar:
> library(dplyr)

Attaching package: ‘dplyr’

Data Science Academy 10


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

The following objects are masked from ‘package:stats’:

filter, lag

The following objects are masked from ‘package:base’:

intersect, setdiff, setequal, union

Essa mensagem não é erro. Apenas uma informação de que algumas funções estão sendo
compartilhadas com outros pacotes. Você verá esta mensagem com muita frequência à medida
que carregar os pacotes. Pode usar o dplyr normalmente.


27. Não consegui instalar o GREA, conforme mensagem "Error in loadNamespace(name) :
there is no package called ‘devtools’"

Precisa instalar o pacote devtools. Sempre que houver a mensagem : there is no package called
‘xxxxx", significa que o pacote não está instalado e neste caso use a função install.packages()
para realizar a instalação do pacote.
install.packages("devtools")
library(devtools)
install.packages("httpuv")


28. Durante a instalação do Mysql em minha máquina (visto no cap. 4 deste curso) tive alguns
problemas. Utilizo o S.O. Mac OS Sierra, e alguns alguns comandos foram um pouco
diferentes dos explicados na apostila de instalação disponibilizada neste capítulo. Vamos às
diferenças:

1) Durante o passo 9, o comando para logar no Mysql via terminal é
"./usr/local/mysql/bin/mysql -uroot -p" , com um ponto no começo. Entretanto, quando
executo dessa forma recebo um erro dizendo "-bash: ./usr/local/mysql/bin/mysql: No such
file or directory". Para resolver esta questão basta ignorar o ponto no início do comando que
funcionará sem problemas.

2) Durante a tentativa de login no Mysql foi exibida outra mensagem de erro: "ERROR 2002
(HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)". Ao
pesquisar sobre esse erro vi que era em virtude do SGBD não estar rodando. Ao levantar o
serviço o login foi efetuado com sucesso.

Acho importante compartilhar essas informações, pois alguém pode passar pelo mesmo
problema.

Data Science Academy 11


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning


28. Olá, fiz o Deploy do projeto de Risco de Crédito no Azure ML, porém ao testar, no proprio
Azure, inserindo os valores das 21 variáveis (peguei a primeira oservação da base de
dados original como teste) ao rodar o Azure apresenta um erro: Unable to finish 'Risco de
Crédito - Deploy [Predictive Exp.]' test. Module execution encountered an internal library
error. Quando entro nos detalhes: FailedToEvaluateRScript: The following error occurred
during evaluation of R script: R_tryEval: return error: Error in cut.default(x, breaks = cuts,
order_result = ordered) : 'breaks' are not unique , Error code: LibraryExecutionError, Http
status code: 400, Timestamp: Fri, 31 Mar 2017 14:23:41 GMT. Mesmo erro no Excel
baixado. Poderiam me orientar por favor?

Esse erro normalmente ocorre porque foram geradas informações duplicadas no seu dataset,
provavelmente nas etapas anteriores. Isso pode ser resolvido usando a função unique(). a
função unique foi uma sugestão, já que a mensagem de erro indica que existem items
duplicados. O uso é: unique(iris), onde iris nesse caso é o nome do dataset. Experimente fazer
alguma alteração nos parâmetros do módulo que está gerando erro. O Azure pode ter passado
por alguma atualização recente, o que pode requerer alteração dos parâmetros. Verifique
também o que ocorre nos módulos anteriores. Eles apresentam alguma mensagem de erro?
Experimentou remover o módulo com erro e adicionar novamente?


29. Ao colocar na Produção (embora como postei na pergunta anterior não tenha funcionado
ainda) esta dúvida é mais conceitual. Tenho 21 variáveis para fazer o input. Porém a
ultima, a 21a , trata-se do CreditStatus que é a variável que quero prever. Para meus
novos dados na pratica eu não tenho esse valor. Essa variável não deveria estar fora do
input? Tenho que colocar então um dos dois valores só para cumprir com o requerimento
do input?

Quando você faz as previsões, não precisa da variável target, afinal é isso que vc quer prever.
Você usa novos valores para as variáveis preditoras e realiza as previsões. Aqui tem a
documentação oficial do Azure, mostrando esse processo em detalhes, que é o que chamamos
de Deploy, basicamente o que eu mostro na aula: https://docs.microsoft.com/en-
us/azure/machine-learning/machine-learning-publish-a-machine-learning-web-service. Veja se
faltou alguma etapa no seu processo.


30. Estou trabalhando no projeto exercício sobre Text Mining. Ainda não compreendi direito
sobre a biblioteca 'tm' e suas funções, mas constatei que no passo 2 era realizado um
"merge" dos vários corpus por meio de um loop (for). No entanto, ele gerava uma lista de
corpus o que produzia um erro ao tentar remover a pontuação (usando o tm_map e
removePunctuation). Bem, por conta disso consegui mesclar os corpus utilizando outro
comando, dataset_corpus_all = Corpus(VectorSource(unlist(dataset_corpus))). Embora
não tenha encontrado erros, o resultado não foi o esperado, pois parece que eu perdi os
metadados (na realidade acho que misturei eles, pois consegui acessar o corpus via

Data Science Academy 12


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

class_1.content, class_2.content, por exemplo). Bem, tenho pesquisado mais sobre como
mesclar vários corpus (penso que aí que está o problema). Minhas dúvidas são: (1) há
outras maneiras de mesclar vários corpus? (2) o intuito é que o conteúdo e os metadados
estejam "dentro" de cada classe? Digo isso, pois a instrução colnames falhou, pois eu
tinha mais colunas do que número de classes. Informações do meu RStudio (via
sessionInfo()):
R version 3.3.3 (2017-03-06)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 16.04.2 LTS

locale:
[1] LC_CTYPE=pt_BR.UTF-8 LC_NUMERIC=C
[3] LC_TIME=pt_BR.UTF-8 LC_COLLATE=pt_BR.UTF-8
[5] LC_MONETARY=pt_BR.UTF-8 LC_MESSAGES=pt_BR.UTF-8
[7] LC_PAPER=pt_BR.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=pt_BR.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats graphics grDevices utils datasets
[6] methods base

other attached packages:
[1] wordcloud_2.5 RColorBrewer_1.1-2 tm_0.7-1
[4] NLP_0.1-10 reshape_0.8.6

loaded via a namespace (and not attached):
[1] plyr_1.8.4 parallel_3.3.3 tools_3.3.3
[4] Rcpp_0.12.10 slam_0.1-40


Consegui resolver. Eu estava tão preocupado em realizar o "merge" de forma correta que não
percebi que poderia remover as colunas das matrizes document_tm_mat e
document_tm_clean_mat. Depois de fazer isso, o "projeto exercicio" funcionou normalmente e
as imagens foram geradas corretamente. No entanto, a fim de aprimorar a solução persite a
dúvida sobre a melhor forma de mesclar vários corpus e se há uma maneira mais elegante para
excluir colunas em R, pois usei o comando document_tm_mat =
as.matrix(document_tm_mat[,c(-2, -4, -6, -8, -10, -12, -14, -16)]). Obs: Usei operador igual, pois
o seta não é permitido aqui no fórum.


31. Pelo que pude entender, vídeos como este do Text Mining, são uma prévia. A explicação
de cada comando é feito nos capítulos seguintes?

Data Science Academy 13


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

Seria conteúdo demais para um único curso e por conta disso, vamos evoluindo os conceitos a
cada curso e aumentando o grau de complexidade. Estudamos Text Mining no curso seguinte
de Python com Spark, no curso de Machine Learning e no curso de Business Analytics, de modo
que o aluno vá adquirindo melhor compreensão ao longo de toda a Formação.


32. Ao executar o carregamento do pacote 'xlsx' acontece um erro fatal no RStudio, isso
acontece também ao executar o carregamento do pacote 'XLConnect'. Já instalei várias
versões do Java, tais como jdk e jre. instalei também a 64 bit s e a x86, porém sem sucesso
algum. Atualizei o R e RStudio e estou utilizando a ultima versão do Java com todas a
variáveis de ambiente corretas, inclusive agora estou utilizando outro computador. O erro
resultante antes de instalar o Java é o seguinte: > Sys.setenv(JAVA_HOME = 'C:/Program
Files/Java/jre1.8.0_121') > Sys.getenv("JAVA_HOME")[1] "C:/Program
Files/Java/jre1.8.0_121"> system("java -version")Warning message:running command
'java -version' had status 127 e o erro fatal do RStudio ao carregar o pacote "xlsx"
persiste, alguma ideia do que seja?

Primeiro, remova o R e RStudio da sua máquina. Quando reinstalar, certifique-se que criar uma
pasta na raiz do drive C e não usar pastas com espaço no nome (como Arquivo de Programas).
Outros alunos tiverem problema com isso e criamos a pasta C:\R para instalar o R. Eu mesmo
tenho o R instalado nesse diretório. O Windows não se comporta bem com aplicações baseadas
em Unix, como o R. O Java você pode manter na pasta atual, mas abra um prompt e execute:
java -version. Não pode haver erros neste comando e se houver, reinstale o Java. Instale
novamente os pacotes e defina as variáveis e vemos se isso resolve. Se não resolver,
agendamos uma sessão remota e eu reviso sua configuração. Mas consigo carregar o pacote na
minha máquina com Windows 10 64 bits sem problemas e portanto o pacote funciona bem,
sendo mesmo alguma questão de configuração.


33. No pacote Caret, eu não preciso passar o meu data set de treino quando for usar o
predict? Ele identifica automático que o que "sobrou" do treino do modelo é pra ser
usado no predict?

A função possui um parâmetro chamado newdata, no qual você pode especificar um novo
dataset, como o dataset de teste por exemplo (mostro isso em vários outros cursos na
Formação). Se não especificado, os dados usados no treinamento do modelo são usados na
previsão.


34. Todos os arquivos que eu estou baixando do capítulo 1 e 2 estão vindo com as palavras
que possuem acentos com símbolos no lugar do acento. Está acontecendo tanto dentro
do R studio quanto no nome do arquivo na minha máquina. Isso é normal ou tem algo
que eu posso configurar para resolver?

Data Science Academy 14


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

Aqui está o procedimento para ajustar o problema dos acentos:
https://support.rstudio.com/hc/en-us/articles/200532197-Character-Encoding.


35. Estou recebendo mensagem de erro ao tentar carregar o pacote Caret. Fiz o
install.packages, deu OK. Quando faço o library(caret), recebo:Error in loadNamespace(j

E agora acho que consegui instalar e a mesma mensagem não aparece mais. Entrei no link
postado pelo Daniel, não sabia bem o que baixar ali no git mas encontrei um documento "A
Short Introduction to the caret Package" e nele estava indicado o seguinte comando:
install.packages("caret", dependencies = c("Depends", "Suggests")). Fiz desta forma, demorou,
parece ter instalado uma centena de pacotes mas agora está funcionando.


36. Estou recebendo a seguinte mensagem de erro tentar executar um app Shiny:

Warning: Error in if: missing value where TRUE/FALSE needed
Stack trace (innermost first):
56: observerFunc [C:/REstatistica/Sistema.R#294]
1: runApp
ERROR: [on_request_read] connection reset by peer

Coloquei a sessão que estava com esse erro dentro de um 'evento', pós botão. Então eu eu
inicio o app. insiro os dados e após clicar no botão ele executa as funções. Provavelmente o
erro se dava pois os parametros das funções não tinham valor de inicialização, então ficavam
como 'NA' e o 'shiny' não aceitava.


37. Na aula "Trabalhando com MongoDB e R" não consigo conectar no banco, sempre
aparece uma mensagem informando error 2. Meu mongoDB está instalado em uma
maquina virtual com ubuntu, onde tambem instalei o MySQL. Quando instalei o MySQL
tive varios problemas de acesso remoto, mas depois de muitas pesquisas resolvi o
problema, porém com mongoDB está dificil. Tem mais de 2 dias tentando acessar o
mongodb sem sucesso. Ja liberei firewall, permiti acesso de todos ips, ja rezei e nada.
Teria algum manual de instalação e configuração do mongo DB em maquina virtual com
linux? Voltei no curso python pra verificar a instalação do mongodb, mas só achei manual
de instalação no windows.

Normalmente eu rezo 3 vezes antes do MongoDB funcionar...rsrs. Não havíamos criado o
manual para o Linux, pois são muitas distribuições diferentes. Mas criei agora rapidamente um
manual de instalação do MongoDB em uma das minhas VM's com Ubuntu 16.04. Você encontra
o manual no capítulo 6 do curso de Python Fundamentos. Mostro como checar o status do
MongoDB e como desabilitar o firewall. Se estes itens estiverem ok, então é preciso verificar a
conectividade da sua máquina com a VM.

Data Science Academy 15


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

38. Olá, na aula do terceiro capitulo sobre Text Mining, estou executando o primeiro
exemplo(com as questões) no wordcloud e está retornando erro:
Error in simple_triplet_matrix(i, j, v, nrow = length(terms), ncol = length(corpus), :
'i, j' invalid
Percebi que só ocorre após eu fazer essa linha:
dfCorpus

Instalou o pacote SnowballC? install.packages("SnowballC") library(SnowballC). Pode ser
também um problema de conversão dos caracteres na hora que o arquivo foi carregado.
Experimente definir o encoding, adicionando a cláusula encoding ="latin1" ao carregar o
arquivo. O RSTudio é bastante sensível a configuração de encoding do sistema operacional. Era
erro de encoding mesmo, eu consegui convertendo o corpus para utf-8 com iconv.


39. Na coluna "f" da tabela abaixo, quero fazer a soma da "Freq" atual com as anteriores e
não estou conseguindo.

estou tentando utilizar a seguinte função:
sum(tabela$Freq[1:???])
??? tabela
variavel Freq fr f
1 2000 5 25 0
2 3000 8 40 0
3 4000 5 25 0
4 5000 2 10 0


A coluna f tem que ter a seguinte saida:
f
5
13
18
20

Alguem pode me ajudar ?

Só usar a função cumsum(). Exemplo:

vec1 = c(2000, 3000, 4000, 5000)
vec2 = c(5, 8, 5, 2)
vec3 = c(25, 40, 25, 10)
vec4 = c(0, 0, 0, 0)
df = data.frame(vec1, vec2, vec3, vec4)
df$cum = cumsum(df$vec2)

Data Science Academy 16


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning



40. Estou tendo o seguinte problema: quando vou instalar o pacote rmongodb aparece a
seguinte mensagem: "package 'rmongodb' is not available (for R version 3.3.2)". Ja
procurei na internet se tem alguma solução e não encontrei nada que resolvesse meu
problema.
Alguma sugestão?

Outros alunos já tiveram esse problema e aqui no forum há um histórico sobre isso. O que
ocorre, é que alguns meses depois do lançamento do curso, o pacote foi descontinuado
(infelizmente, pois pacote é muito bom). Quando isso ocorre, o pacote sai do repositório
principal do CRAN e vai para o archive. O pacote ainda pode ser usado normalmente, mas nesse
caso a instalação não é automática. Você precisa baixar o pacote e instalar manualmente. Esse
é um dos desafios de usar software livre. Baixe o pacote aqui: https://cran.r-
project.org/src/contrib/Archive/rmongodb/, coloque o arquivo no diretório de trabalho e
depois execute: install.packages("nome arquivo.xpto", type=source) e então você poderá usar o
pacote normalmente. Me avise se tiver problemas. consegui resolver da seguinte forma:
library(devtools)install_github(repo = "mongosoup/rmongodb")


41. Estou com dificuldade para resolver um problema. Quando eu abro os scripts do DSA
vários caracteres como palavras acentuadas e ç aparacem com caracteres estranhos.
Alguém sabe como resolver isso? Acho que é alguma configuração, eu já uso R e alguns
códigos meus (antes da DSA) também têm esse problema: escrevo, salvo, reabro e está
tudo bagunçado.

Você precisa configurar o Character Encoding no RStudio. Aqui o procedimento:
https://support.rstudio.com/hc/en-us/articles/200532197-Character-Encoding. No caso de usar
um editor de texto, salve os arquivos com encoding UTF-8.


42. Estou reproduzindo o experimento do Modelo Preditivo de Bikes no Azure ML(Capítulo 10
do Curso Big Data Analytics com R e Microsoft Azure ML) e no Normalize Data está me
gerando o seguinte erro:

"Column with name "dteday" is not in an allowed category. . ( Error 0056 )"

Segui os passos mostrados no vídeo, alterando o código em R. Mesmo assim o erro persiste.

Alguma dica do que eu possa alterar aqui?


Agradeço desde já a ajuda!

Data Science Academy 17


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning


Me parece que faltou fazer o mapeamento no Normalize. Clique no módulo Normalize com o
botão direito e View Data e veja como os dados se apresentam. Faça a mesma coisa com o
módulo anterior e compare os resultados. Edite também as configurações dos módulos e veja
se o mapeamento está correto. Eu inverti a opção de colocar as colunas que eu não queria e
coloquei as que eu queria. No normalize, eu coloquei na ordem e funcionou!


43. Olá, no primeiro módulo - DataFrames e operações com DataFrames ao criar um plot
plot(df2$Admdate) o console me retorna o seguinte erro: Error in plot.new() : : figure
margins too large. Estou usando a versão do R 3.3.2.

Execute este comando antes de executar o gráfico: par(mar=c(1,1,1,1)). Isso vai ajustar sua área
de visualização.


44. Pessoal, na ultima frase do video-aula "Introdução à Prob - Parte 2/2" é dito como
conclusão que 76% é a prob de uma mulher obter nota 90. Porém, estava sendo calculada
a soma da Prob de dois eventos (não exclusivos, ok) onde evento A era a prob de um
aluno obter nota 90 (seja mulher ou homem) e evento B a prob de ser mulher. A soma das
probs destes dois eventos me parece ser diferente da prob de uma mulher obter 90. São
coisas diferentes, não?

No vídeo são demonstrados 2 exemplos: O primeiro exemplo refere-se a um evento
mutuamente exclusivo, onde deseja-se saber a probabilidade de um aluno obter nota 85 ou 90,
nesse caso foi utilizada a fórmula P(A ou B) = P(A) + P(B). No segundo exemplo, refere-se a uma
mulher tirar nota 90, é um evento não mutuamente exclusivo, os dois podem ocorrer ao
mesmo tempo. Portanto foi utilizado a fórmula = P(A) + P (B) – P (A e B).


45. Pessoal tentei carregar o arquivo Titanic no MySQL (estou trabalhando no Workbench) e
obtive o seguinte erro. Como resolvo?

14:50:06 LOAD DATA INFILE
'C:\Users\Owner\Documents\pessoal\DataScienceAcademy\R_Fundamentos_Azure\R_Parte
03_Import_Limpeza\titanic.csv' INTO TABLE titanic FIELDS TERMINATED BY ',' ENCLOSED BY
'"' LINES TERMINATED BY '\n' IGNORE 1 ROWS Error Code: 1290. The MySQL server is
running with the --secure-file-priv option so it cannot execute this statement 0.000 sec

Essa é uma restrição de segurança do MySQL que pode ser configurada alterando um
parâmetro de configuração ou incluindo a palavra LOCAL no procedimento de carga, assim:
LOAD DATA LOCAL INFILE "text.txt" INTO TABLE mytable; Tente esta opção e caso não funcione,
alteramos o parâmetro.

Data Science Academy 18


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning


46. utilizo a instrução install.packages("data.table") que e executada com sucesso,
retornando a mensagem "package ‘data.table’ successfully unpacked and MD5 sums
checked". Entretanto, ao tentar carregá-lo utilizando a instrução "library(data.table)",
recebo a mensagem de erro "Error in library(data.table) : there is no package called
‘data.table’". Desejo utilizar a função fread e não consigo por isso. Alguém pode me
ajudar. Grato?

já tentou instalar dessa maneira install.packages("data.table", dependencies=TRUE)


47. Iniciando estudo em R. Meu RStudio não está reconhecendo a acentuação dos arquivos .R
que estou abrindo. Já configurei em spelling o Portugues-Brasil. Tem que configurar algo
mais?

Você deve salvar o arquivo com encoding UTF-8. Aqui está a solução:
https://support.rstudio.com/hc/en-us/articles/200532197-Character-Encoding


48. Sobre o impacto da analise preditiva, gostara de exemplos de empresas no setor de call
center. Como hoje a análise está ajudando as grandes empresas do ramo?

Aqui tem alguns bons exemplos do Sales Force: https://www.salesforce.com/hub/service/call-
center-analytics.


49. Olá: quando executo o comando: devtools::install_github("Stan125/GREA")...apresenta o
seguinte erro: Error in loadNamespace(name) : there is no package called ‘devtools’

A mensagem de erro: there is no package called ‘devtools’ indica que o pacote não está
instalado. Para instalar execute: install.packages("devtools").


50. Tive problemas na instalação do MySQL devido à falta do Visual C++ runtime, que é pré-
requisito. Já consegui resolver, porém seria interessante ter um adendo de instalação no
manual disponibilizado.


51. Qual a diferença de se utilizar o RStudio e o Microsoft R ? Pelo que entendi tudo (e é o
recomendado) foi feito pelo RStudio.

Sobre sua pergunta, a comparação não deve ser entre RStudio e Microsoft R e sim entre a
Linguagem R padrão e o Microsoft R. Existem atualmente 3 "distribuições" da linguagem R: a
linguagem R pura (aquela que vc baixa do CRAN que usamos ao longo do curso), o Microsoft R

Data Science Academy 19


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

(que antes era Revolutions R e foi comprado pela Microsoft) e Oracle R. Essas 3 distribuições do
R podem ser executadas a partir do RStudio que é o ambiente de desenvolvimento


52. Estou finalizando o módulo 11 do curso "R com microsoft AML". Deu erro nos seguintes
scripts:

> library("ROCR")
Carregando pacotes exigidos: gplots

Attaching package: ‘gplots’

The following object is masked from ‘package:stats’:

lowess

Warning message:
package ‘ROCR’ was built under R version 3.3.2

> class1 confusionMatrix(result_previsto$actual, result_previsto$previsto)
Error in requireNamespaceQuietStop("e1071") : package e1071 is required

Se alguém puder me ajudar a esclarecer eu agradeço, por favor.

A primeira parte é um warning, apenas informando que o pacote foi criado em uma versão
anterior do R (o que não significa que não pode ser usado em uma versão mais recente). Na
segunda parte, informa que o pacote e1071 é requerido. Você deve instalar o pacote ou caso já
tenha instalado, deve carregar na sua sessão R, com o comando library(e1071).


52. Estou tentando criar uma "wordcloud", entretanto ao baixar o pacote "tm", o R devolveu
a seguinte mensagem:

Error in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) :
there is no package called ‘slam’
Além disso: Warning message:
package ‘tm’ was built under R version 3.2.5
Erro: package or namespace load failed for ‘tm’

Em seguida tentei criar um corpus (comando abaixo) para e o R não reconheceu a função
Corpus

Essa parte da mensagem de erro: there is no package called ‘slam’, indica que o pacote slam
não está instalado. Instale o pacote com o comando: install.packages("slam") e depos instale o

Data Science Academy 20


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

pacote tm novamente. Veja se a mensagem continua e se outros pacotes terão que ser
instalados. Lembre-se de ter o RTools instalado em seu computador. Qualquer dificuldade
poste aqui que ajudamos.


53. Estou no módulo 7, na parte de Regressão. Já assisti a todos os vídeos. Sei que os
exemplos foram uma introdução à ML com o algoritmo de Regressão. Mesmo assim,
gostaria de deixar algumas questões / dúvidas para discussão, e saber a opinião dos
colegas e instrutores:

Questão 1: O primeiro modelo foi completo, com todas as variáveis. Descobriu-se que
"ausências", "famrel", "G1" e "G2" são, aparentemente, as variáveis mais importantes para
predizer o valor de G3. É claro que o feeling do cientista de dados e seu conhecimento do
negócio são os mais importantes, aliados aos indicativos da matriz de correlação, por
exemplo. Porém, considerando que pode haver relações que não se explicitem por meio
dessas análises, e a possibilidade de alguma influência intrínseca não detectada (exemplo:
famrel tem baixa correlação com G3 e com as notas em geral, mas se mostrou importante
para o modelo), penso que uma boa prática é rodar um modelo completo (se o poder
computacional disponível for capaz de processar os dados) e depois selecionar as variáveis
mais significantes para compor o modelo final, seja de forma isolada ou através de
combinações entre elas. O que acham ?

Questão 2: De acordo com a estatística F, se entendi bem, os modelos que melhor se
ajustaram aos dados foram o v1 (completo) e o v2 (G3 em função apenas de G1 e G2). Pelas
demais estatísticas, como o R2 (postagem de Eduardo Morelli), pela maior estatística F,
menor p-value e o segundo maior adjusted R squared, o melhor modelo parece ter sido o v2.
Penso que uma estratégia razoável poderia ser estimar um modelo para as notas G1 e G2,
separadamente, com base nas demais variáveis (acho que são algoritmos ensemble, se me
lembro bem, conforme explicado no vídeo de Algoritmos de ML) e, com base nesses modelos
isolados, ajustar G3 . Faz sentido ?

Questão 3: Em qualquer situação, um modelo maior é sempre mais preciso (excluído o risco
de "overfitting"). Porém, pelo que entendi do vídeo 6 de Regressão Linear, em teoria, à
medida que um volume massivo de dados fica disponível, modelos mais simples poderiam
retornar predições mais precisas ? Colocado de outra forma: com mais dados, seria possível
alcançar modelos mais precisos com menos variáveis dependentes, do que com modelos
"completos" e menos dados disponíveis ?

Essas discussões são muito pertinentes. Antes de expor meu ponto de vista é importante
ressaltar duas coisas: primeiro, que no curso de Machine Learning estudamos os modelos em
detalhes e em nível bem mais avançado do que vimos aqui, cujo objetivo era dar ao aluno o
primeiro contato com o aprendizado de máquina. Segundo, os modelos de regressão são os
modelos mais simples de Machine Learning e para problemas que envolvem muitos dados (Big
Data) e muitas variáveis, existem algoritmos muito superiores como os métodos ensemble

Data Science Academy 21


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

(para classificação e regressão), SVM (para classificação e regressão), as redes neurais e as
redes neurais profundas (Deep Learning). Mas o aprendizado de modelos simples de regressão,
vai ajudar ao longo do processo de aprendizado de temas mais avançados. Sobre os
questionamentos, rodar o modelo usando todas as variáveis é normalmente um primeira
opção, como forma de identificar as mais relevantes. Mas em ambiente de produção, quando
publicamos nossa aplicação analítica, isso pode não ser viável puramente por restrições de
hardware e de tempo. Exatamente aí que Deep Learning vem se destacado, quando processado
em GPU's, pois as redes neurais profundas nos permitem usar muitas variáveis e processar em
paralelo nas GPU's, reduzindo consideravelmente o tempo de processamento e aumentando a
precisão do modelo.Com relação às estatísticas é como deitar à noite e se cobrir com um
cobertor curto. Se cobrimos a cabeça, descobrimos o pé. À medida que alteramos as variáveis,
adicionando ou removendo variáveis do modelo, as estatísticas vão nos mostrar coisas
ligeiramente diferentes. E aí está a questão. Todas as opções estarão relativamente corretas,
mas não estarão aderentes ao que precisamos para resolver o problema. Por isso sempre
reforço a importância de definir as métricas e critérios de parada, antes de começar o trabalho
de análise. Soma-se ainda o fato de que o modelo de Machine Learning avalia números, mas o
conhecimento de negócios pode ser decisivo para identificar as variáveis relevantes ou para
alterar parâmetros do modelo.


54. Como faço pra transformar uma coluna de uma dataframe (factor) em um outro
dataframe com duas colunas, onde um campo é o ID e outro um ITEM? Na imagem tenho
uma tabela com varias colunas e uma delas e a marca do carro. Preciso transformar as
marcas em um dataframe com uma coluna ID (inteiro) e outra o nome das marcas e os
nomes das marcas não podem repetir no novo dataframe.

Existem diversas formas de fazer isso. Você pode usar a função mutate do pacote dplyr, a
função separate do pacote tidyr, alguma das funções do pacote stringr como strplit e
str_split_fixed ou mesmo expressões regulares com a função gsub. Em todos os casos você vai
encontrar diversos exemplos nos primeiros capítulos do curso de R com Azure.


55. Estou fazendo o curso "Big data Fundamentos" e pretendo avançar com os estudos para
direcionar minha carreira em Big data. Estou interessado no curso "Formação Cientista de
Dados" mas gostaria de confirmar se minha formação acadêmica e experiência
profissional atendem aos requisitos para ser um Cientista de dados. Tenho formação em
engenharia elétrica, experiência em automação industrial (máquinas CNC e Robótica).
Mudei minha carreira em 2003 quando mudei para a Inglaterra, atuando no seguimento
de varejo (business development). Implantando lojas de uma rede de Franquias
americana na Inglaterra e em mais oito países. Porém nunca atuei nem tenho formação
ou experiência em Ciências da computação, ou qualquer linguagem de programação.
Tenho muito interesse em atuar como analista de mercado utilizando Big Data, porém
gostaria de saber quais as minhas chances de aprender e ser bem sucedido sem esse
conhecimento em programação.

Data Science Academy 22


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning

Sua formação em Engenharia já é um passo importante, pois você já possui habilidade com
Matemática e raciocínio lógico. Para linguagem de programação, recomendo você fazer o curso
Python Fundamentos, gratuito aqui na Data Science Academy. Esse curso é de introdução à
programação com Python. Por ser 100% online, você pode fazer no seu tempo. Na Formação
Cientista de Dados, o primeiro curso será sobre linguagem R e vai começar do básico, até o
intermediário/avançado. Qualquer pessoa, mesmo sem experiência em programação, poderá
acompanhar. Na parte de Estatística e Matemática, creio que você não terá problemas em
acompanhar, por conta do seu background acadêmico. O curso mais complexo da Formação é o
de Engenharia de Dados. Neste curso, vamos trabalhar com sistema operacional Linux e
armazenamento de dados com Hadoop e Spark. Nós criamos uma máquina virtual que será
disponibilizada para download, de modo que os alunos com poucas habilidades em sistemas
operacionais, possam acompanhar o curso com mais tranquilidade. Em 99% das vezes, o cluster
Hadoop estará rodando em Linux/Unix e por isso este conhecimento é fundamental. E como
tudo será passo a passo, não creio que os alunos terão dificuldades. Dê uma olhada no curso de
Python e veja como os procedimentos são bem passo a passo. Eu e os outros instrutores,
ministramos treinamentos há muito anos e sabemos identificar onde os alunos poderão ter
problemas. Curso online sempre traz um desafio adicional, mas teremos o fórum, e-mails e
webinars. Nosso objetivo é que os alunos aprendam de verdade e daremos todo o suporte
necessário. Sobre os demais cursos, em Machine Learning veremos os conceitos matemáticos e
estatísticos dos algoritmos, vamos aplicar e customizar os algoritmos usando R e Python (que
estudaremos nos primeiros cursos) e na sequência vamos aplicar os conceitos em Business
Analytics e Visualização de Dados. É muito difícil afirmar se você terá ou não dificuldades, pois
depende também da sua dedicação ao longo do curso. De nossa parte podemos garantir que os
cursos serão ensinados passo a passo. A programação para Data Science é diferente da
programação para criar um game ou um sistema web. Em Data Science, a programação é muito
mais a criação de scripts que executarão coleta, limpeza, armazenamento e junção dos dados,
além de aplicar regras estatísticas. Apenas em casos específicos, é necessário a elaboração de
lógicas complexas em programação. Na Formação Cientista de Dados, os alunos estarão aptos a
manipular Big Data usando R e Python.


56. Eu instalei e carreguei os pacotes readr e dplyr:

install.packages("readr")
install.packages("dplyr")
library(readr)
library(dplyr)

e quando executei o comando abaixo df_sono, apareceu a mensagem de erro abaixo:

df_sono <-
read_csv("http://datascienceacademy.com.br/blog/aluno/RFundamentos/Datasets/P
arte3/sono.csv")
Error: could not find function "read_csv"

Data Science Academy 23


www.datascienceacademy.com.br
Big Data Analytics com R e Microsoft Azure Machine Learning


Para o comando tbl_df também dá erro, conforme mostrado abaixo:

install.packages("hflights")
library(hflights)

> ?tbl_df
No documentation for ‘tbl_df’ in specified packages and libraries:
you could try ‘??tbl_df’
> flights <- tbl_df(hflights)
Error: could not find function "tbl_df"

O que devo fazer agora , sendo que estes comandos serão muito utilizados ao longo
do curso?!


Após eu fechar e abrir novamente o RStudio deu certo :-) . Estou vendo que algumas librarys
para carregar corretamente é preciso que se reinicie o RStudio.

O que eu não entendi e este erro já ocorreu outras vezes é quanto à função hist. Dê uma
olhada:
> hist(df_sono$sono_total)
Error in plot.new() : figure margins too large

Daí não consigo visualizar o histograma dos dados. O que pode estar acontecendo?!

Um dos maiores problemas do R é a gestão de memória do computador. Recomendo, sempre
que você for trabalhar com os scripts, limpar sua workspace e então executar os comandos.
Isso vai evitar muitos problemas.

Com relação ao gráfico, lá no forum outros alunos reportaram o mesmo erro. Isso ocorre
porque sua área de plotagem é muito pequena. O problema pode ser resolvido definindo as
margens com a função par(), assim: par(mar=c(1,1,1,1)). Inclua este comando, antes do plot e
você não deve ter mais o erro.







Data Science Academy 24


www.datascienceacademy.com.br

Você também pode gostar