Brazil’s largest urban mobility startup 99 announces US$100 million investment from SoftBank

Brazilian urban mobility startup 99 announced that it has signed an investment agreement of US$100 million with SoftBank. This extension, combined with more than US$100 million invested in the first tranche led by DiDi Chuxing and Riverwood in January 2017, closes this investment round of more than US$200 million. This is the largest investment round so far in a Brazilian start-up according to FactSet. Previous backers include Monashees, Qualcomm Ventures, and Tiger Global. Lazard advised 99 on this transaction.

Founded by Masayoshi Son in 1981, SoftBank is a major investor in the ridesharing space globally, with significant investments in DiDi, Ola and Grab, the leading rideshare platforms in China, India and Southeast Asia, respectively. In less than six months from DiDi and Riverwood’s investment, 99 was able to attract another leading international investor. The new capital will further strengthen 99’s fast-growing peer-to-peer service, 99POP, to consolidate it as the leading platform for private drivers in Brazil and to expand it to other countries in Latin America.

“We see strong growth and a great outlook for the mobility solutions sector in Latin America. The 99 team has made impressive progress in Brazil, now operating in more than 400 cities and bringing positive changes to millions of users. We are committed to supporting local champions like 99, and look forward to participating in their long-term success”, said David Thévenon, Managing Director at SoftBank.

Peter Fernandez, CEO of 99, said, “We are confident in our ability to strengthen our leadership in peer-to-peer transportation services in Brazil and in Latin America. Since DiDi’s investment, 99POP weekly rides have grown tenfold. Our strategy is clearly bringing results and we are excited to have SoftBank as an investor. This investment is another strong indication of our leading position in the growth of e-hailing services in the region”.

Operating since 2012, 99 is Brazil’s largest local shared mobility provider and already connects more than 200,000 drivers to more than 14 million registered users.

“99 was launched in 2012, with only three entrepreneurs. Today, we are an urban mobility startup with a team of over 350 people working together in a collaborative environment with our community of drivers, users and the Brazilian public authorities. Our aim is to provide services that help solving urban mobility issues in the region”, Fernandez added.

This transaction remains subject to customary closing conditions, including approval from CADE – the Brazilian antitrust commission.

*******

About 99

99 is a Brazilian urban mobility startup. The company offers app-based on-demand private car and taxi-hailing services across more than 400 cities in Brazil, one of the fastest-growing internet markets in the world, connecting more than 200,000 drivers and 14 million registered users. 99’s mission is to make transportation more affordable, faster and safer, in a socially conscious way that prioritizes driver welfare and collaboration with local governments to improve quality of life in our cities and help solving urban mobility issues in Brazil and Latin America. http://www.99taxis.com/

 

About SoftBank

The SoftBank Group is a global technology player that aspires to drive the Information Revolution. The SoftBank Group is comprised of the holding company SoftBank Group Corp. (TOKYO: 9984) and its global portfolio of companies, which includes advanced telecommunications, internet services, AI, smart robotics, IoT and clean energy technology providers. In September 2016, ARM Holdings plc, the world’s leading semiconductor IP company, joined the SoftBank Group. To learn more, please visit www.softbank.com.

99 recebe investimento de US$ 100 milhões da SoftBank

English

A 99, principal startup de mobilidade urbana do Brasil, anuncia hoje a assinatura de um acordo de investimento da ordem de US$ 100 milhões com a SoftBank. Este montante, somado aos mais de US$ 100 milhões captados no início do ano junto à Didi Chuxing e à Riverwood, fecha a rodada de investimentos com mais de US$ 200 milhões. Este é a maior rodada de investimento já realizada por uma startup brasileira de acordo com a FactSet (companhia multinacional especializada em dados do mercado financeiro). Outros fundos e empresas como Monashees, Qualcomm Ventures e Tiger Global também investiram na startup, que foi aconselhada pela Lazard nessa nova transação.

Fundado por Masayoshi Son em 1981, a SoftBank é o maior investidor global em aplicativos de mobilidade, com investimentos significativos na DiDi, Ola e Grab, as maiores empresas do setor na China, Índia e Sudeste Asiático, respectivamente.

Apenas seis meses após o aporte liderado pela DiDi e pela Riverwood, a 99 atrai outro importante investidor internacional. Com este novo capital, a 99 vai fortalecer ainda mais o rápido crescimento do serviço de carros particulares 99 POP, o que levará a marca a consolidar sua liderança neste segmento no Brasil, bem como expandir por toda a América Latina.

“Vemos um grande crescimento e uma ótima perspectiva para o setor de soluções de mobilidade na América Latina. O time da 99 tem feito um progresso impressionante no Brasil, operando em mais de 400 cidades e realizando mudanças positivas na vida de milhões de usuários. Nós estamos comprometidos em apoiar líderes locais, como a 99, e esperamos ansiosamente para participar do sucesso deles a longo prazo”, afirma David Thevenon, diretor executivo da Softbank.

Para Peter Fernandez, CEO da 99, com todos os investimentos recebidos ao longo deste ano, a 99 tem todas as condições de atingir a meta de consolidar a liderança no mercado de transporte por aplicativos de mobilidade no Brasil e, no futuro, na América Latina. “Desde o primeiro aporte da Didi,o serviço 99POP vem crescendo muito em número de corridas semanais. Fica claro que nossa estratégia trouxe bons resultados, e agora estamos animados em ter a Softbank na nossa carteira de investidores. Isso mostra que estamos no caminho certo, como uma forte indicação da nossa posição de liderança no crescente mercado de mobilidade urbana da região”.

Operando desde 2012, a 99 é o maior aplicativo de mobilidade do Brasil, conectando mais de 200 mil motoristas a mais de 14 milhões de usuários registrados. “Quando fundamos a empresa, éramos apenas três empreendedores. Hoje, temos um time de mais de 350 profissionais trabalhando juntos e em colaboração com motoristas e usuários. Nosso objetivo é oferecer serviços que ajudem a resolver questões de mobilidade urbana na região”, completa o executivo.

Esta transação passará por avaliação do CADE (Conselho Administrativo de Defesa Econômica) e demais autoridades relevantes.

Sobre a 99
A 99 é uma startup brasileira de mobilidade urbana que cria soluções de tecnologia para melhorar a vida das pessoas em seus trajetos, com percursos mais rápidos, econômicos e confortáveis. A empresa defende a diversidade de modais – táxi, carros particulares, transporte público, entre outros – como item imprescindível para construção de estruturas de transporte que garantam o direito de ir e vir nos grandes centros urbanos. A 99 conecta mais de 200 mil motoristas a 14 milhões de usuários registrados em mais de 400 cidades no Brasil e oferece quatro categorias, no mesmo aplicativo: 99POP, com carros particulares nas cidades de São Paulo e Rio de Janeiro; o 99TAXI, presente em todo o País e que pode circular nos corredores de ônibus (cidades de SP, RJ, BH); o Modo Desconto, que oferece a comodidade do táxi com valores até 30% mais baixos; e o 99TOP, serviço premium com táxis de luxo. http://www.99taxis.com/.

Mais informações
James Della Valle | james.dellavalle@cdn.com.br | 11 3643-2781
Rodrigo Garutti | rodrigo.garutti@cdn.com.br | 11 3643-2780
Gabriella Moura | gabriella.moura@cdn.com.br |11 3643-2730

About SoftBank
O SoftBank Group is a global technology player that aspires to drive the Information Revolution. The SoftBank Group is comprised of the holding company SoftBank Group Corp. (TOKYO: 9984) and its global portfolio of companies, which includes advanced telecommunications, internet services, AI, smart robotics, IoT and clean energy technology providers. In September 2016, ARM Holdings plc, the world’s leading semiconductor IP company, joined the SoftBank Group. To learn more, please visit www.softbank.com.

Como ativar sua promoção

Ativar a sua promoção e garantir o seu desconto é muito simples!
Basta seguir esses passos:

1– Abra o aplicativo da 99 em seu celular
2 – Toque em “avançar”
3 – Selecione seu destino e categoria desejada (POP, 99Taxi, 99TOP, Táxi Comum)
4 – Se você tem android, toque em forma de pagamento; se você tem iOS, toque em meio de pagamento
5 – Selecione a opção da sua promoção

Pronto! Agora você já garantiu o seu desconto!

Boa viagem!

Como ativar a promoção Páscoa Surpresa

Para conseguir o seu desconto na Páscoa Surpresa, basta seguir esses passos:

1 – Entre no site da promoção: http://cupom.99taxis.com/pascoa-surpresa/
2 – Coloque seu número de telefone
3 – Toque em enviar
4 – Abra o aplicativo da 99 em seu celular
5 – Toque em “avançar”
6 – Selecione seu destino e categoria desejada (POP, 99Taxi, 99TOP, Táxi Comum)
7 – Se você tem android, toque em forma de pagamento; se você tem iOS, toque em meio de pagamento
8 – Selecione a opção “Páscoa Surpresa”

Pronto! Agora você já garantiu o seu desconto!

Boa viagem e feliz páscoa!

Deputados: os carros particulares são uma opção de milhões

Seguir em frente, juntos. Este é um desejo nato da humanidade.

Mulheres e homens usam a tecnologia para diminuir a distância e o tempo entre as pessoas.

A 99 nasceu do desejo de participar desta missão. De contribuir para que a vida nas cidades seja mais acessível e conectada. Com menos perda de tempo no trânsito. E com mais tempo para o que interessa. Para todos.

Com a tecnologia é possível compartilhar mais os carros, reduzindo deslocamentos com uma única pessoa por automóvel. E no lugar, aumentar as viagens com no mínimo de duas pessoas.

A tecnologia torna o transporte mais democrático. E barateia o custo. Cada vez mais queremos USAR, no lugar de TER coisas.

Outro benefício vital: neste momento de crise econômica, os carros particulares estão abrindo dezenas de milhares de oportunidades de trabalho.

Hoje nosso aplicativo junta mais de 6 milhões de passageiros a mais de 200 mil motoristas em 550 cidades brasileiras por meio da tecnologia. Com ofertas de corridas de carros particulares – o POP – e de táxis.

Há espaço para crescer muito mais, e, com ganho de escala, baratear ainda mais o serviço. É preciso levar estes benefícios a muita gente que hoje ainda não tem acesso ao sistema de transporte interligado pelos aplicativos, sobretudo nas áreas que não são próximas aos centros das grandes cidades.

Nesta missão, há espaço para todos. E para todos, juntos.

Por isso a 99 juntou carros particulares e táxis num mesmo aplicativo.

O resultado foi que o POP – nossa modalidade de carros particulares – trouxe mais corridas para os táxis.

Em São Paulo, nos seis primeiros meses de operação, 46% das corridas feitas por passageiros que começaram a usar a 99 pelo POP, foram corridas de táxi.

Um dia você usa o POP, que tem sempre preço muito competitivo. No outro você usa táxi, que é sempre muito rápido, porque tem acesso ao corredor. O bom é poder optar. Sempre. De acordo com a situação.

Apesar desses fatos, alguns parlamentares estão querendo acabar com este avanço de mobilidade e empreendedorismo para todos .

Eles pretendem votar na Câmara Federal uma lei nesta terça-feira, 04/04/2017, que pode impedir que carros particulares continuem trabalhando.

Se essa lei for aprovada com algumas restrições que estão previstas, você não vai mais poder escolher como deseja chegar ao seu destino. Ou mesmo não poderá mais usar desta atividade para gerar renda para a sua família e para o país.

O segmento de carros particulares está atraindo fortes investimentos para o Brasil neste ano de 2017. Só na 99, em janeiro entraram mais de US$ 100 milhões da chinesa Didi Chuxing e o fundo global Riverwood. Contratamos mais de 120 pessoas nas últimas semanas. E temos mais de 150 vagas a preencher nos próximos dois meses. Tudo indica que isto é só o começo. E que não pode parar.

É preciso alertar toda a comunidade de motoristas e passageiros que conhecem os benefícios da atividade de carros particulares a se mobilizarem.

A mostrar a estes deputados federais, que os carros particulares são uma conquista e uma escolha de milhões de pessoas que enfrentam os desafios do dia-a-dia das metrópoles brasileiras para gerar riqueza ao país. Merecemos ter nosso direito de escolha de como se locomover preservado.

Deputados, avançar é a nossa escolha.

Agora os cariocas também podem chamar um táxi ou um carro particular no mesmo aplicativo da 99.

Chegou o 99POP na cidade do Rio de Janeiro, com benefícios para todos.

Para os passageiros, preço competitivo e qualidade superior, com motoristas treinados e carros mais novos.

Para motoristas, a taxa é menor do que a da concorrência, o recebimento é instantâneo e podem optar em aceitar ou não dinheiro, a cada corrida.

E o POP ainda traz mais corridas para os taxistas!

Nossa experiência em São Paulo mostra que 46% das corridas realizadas até hoje por passageiros que começaram a usar a 99 com o POP são corridas de táxi!

Portanto, o 99POP traz mais passageiros para o 99Táxi!

99: Vamos Juntos!

Gerando Mapas com R

Em nosso último post falamos um pouco sobre modelagem de dados aqui dentro da 99 utilizando R, algumas bibliotecas e o R Shiny para compartilhamento e interação com o usuário.

Periodicamente, nós da área de Business Inteligence e Market & Insights da 99, paramos nossas atividades durante metade de um dia para realizar nosso Hack Day. Dedicamos esse tempo para que toda a equipe foque em um problema e encontre sua solução, ou analisar potenciais pontos que podem gerar curiosidade. Ao final, compartilhamos nossos resultados com o restante da equipe a fim de trazer maior inteligência para todos.

Em um de nossos Hack Days, a equipe de BI criou um desafio de gerar visualizações gráficas e em mapas que pudessem trazer novos insights sobre origem e destino dos passageiros. As principais ferramentas utilizadas foram QGis, R e Gephi. Exploraremos nesse post alguns aspectos do R, e as demais ferramentas nos próximos posts.

Bases de Dados

Para nosso Hack Day utilizamos duas bases diferentes: PostgreSQL e MySQL. O R possui bibliotecas para ambas as tecnologias e são de fácil utilização. Antes de mais nada precisamos instalar e carregá-las:

install.packages(c("RMySQL", "RPostgreSQL"))

library(RMySQL) # Biblioteca para MySQL
library(RPostgreSQL) # Biblioteca para PostgreSQL

Lembrem-se que para utilizar as bibliotecas é preciso ter os drivers instalados na máquina. Ambos estão disponíveis em suas respectivas páginas: http://www.mysql.com/downloads/ e http://www.postgresql.org/download/.

Com as bibliotecas e os softwares instalados, criar uma conexão é muito simples. Utilizaremos a função dbConnect(drv, …), onde passaremos o driver como primeiro argumento e os demais dados da conexão, como autenticação e base de dados. 

conPostgre <- dbConnect(PostgreSQL(),
                        dbname = "nome do banco",
                        host = "endereço do servidor",
                        port = 5432,
                        user = "usuário",
                        password = "senha")

conMySQL = dbConnect(MySQL(),
                     dbname = "nome do banco",
                     host = "endereço do servidor",
                     port = 3306,
                     user = "usuário",
                     password = "senha")

Em caso de sucesso na conexão, as variáveis irão manter a conexão aberta, dado necessário para executar as consultas nos bancos de dados. Caso ocorra uma falha, o erro será exibido na tela de console:

Error in postgresqlNewConnection(drv, ...): RS-DBI driver: (could not connect 
            usuario@endereco on dbname "bd"
)

Existem duas maneiras de executar suas consultas dentro das conexões. Elas são essêncialmente iguais, mas a maneira como se recupera as linhas é diferente. O primeiro método é utilizando a função dbSendQuery(conn, statement, …) e, posteriormente, a fetch(res, n = -1, …) para retornar as linhas pesquisadas. No código abaixo mostramos um exemplo utilizando a conexão MySQL, mas o método está disponível para qualquer tipo de banco de dados.

resultado = dbSendQuery(conMySQL, "SELECT
    DATE_FORMAT(data_pedido, '%Y%m%d%H%i') as´data´,
    latitude,
    longitude
        FROM chamadas")

corridas = fetch(resultado, n=-1)

Utilizamos então a função fetch onde o resultado da função anterior é passada como primeiro argumento, e passamos também um valor para n que será o número máximo de linhas processadas por vez. Caso n=-1, todos os resultados serão lidos. A variável corridas irá conter um data frame com n linhas de corridas.A função dbSendQuery receberá como argumentos a conexão que realizamos anteriormente, e a consulta a ser realizada. No caso, selecionamos as chamadas de nossa base de dados, em conjunto com a data (formatada para agrupamento posterior no R), latitude e longitude do passageiro. Esta função irá deixar uma “fila” de resultados pendentes.

Uma opção mais fácil de se implementar e agilizar no desenvolvimento do código, é a função dbGetQuery(conn, statement, …). Esta já apresenta uma implementação padrão interna das funções dbSendQuery e fetch, assim, ao enviar o comando para a coneção, a função retornará automaticamente o data frame com o seu resultado, melhorando a visualização do código e sua organização.

corridas = dbGetQuery(conMySQL, "SELECT
    DATE_FORMAT(data_pedido, '%Y-%m-%d') as´data´,
    latitude,
    longitude
        FROM chamadas")

Com os dados em mãos, podemos continuar com nossa análise.

Manipulação de Dados

Uma biblioteca bastante utilizada por nós no R é a dplyr, que pode ser instalada e carregada com os seguintes comandos:

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

Esta biblioteca tem uma série de funções (em formato de verbos em inglês) que visam facilitar a manipulação dos dados. Quando falamos de data frames, esta ferramenta é excelente por dar agilidade e facilidade na compreensão das funçoes. Dentre elas:

Função Descrição
filter() Filtrar dados de acordo com as condições
arrange() Reordenar as linhas por uma ou mais colunas
select() Seleciona algumas colunas quando trabalhando com muitos dados
distinct() Seleciona apenas valores distintos de uma ou mais colunas
mutate() Insere colunas na série de dados sendo trabalhada
summarise() Cria um sumário de uma única linha de todos os dados da tabela

Outro aspecto importante desta biblioteca é que, ao contrário de muitas funções, não é preciso fazer funções aninhadas. A dplyr possui uma funcionalidade que permite passar o resultado da função anterior para a seguinte utilizando apenas o comando %>% ao final. Vejamos:

datasDasCorridas <- group_by(corridas, data)
datasDasCorridas <- distinct(datasDasCorridas, data)
datasDasCorridas <- select(datasDasCorridas, data)

#ambos os resultados de datasDasCorridas terão os mesmos valores

datasDasCorridas <- group_by(corridas, data) %>%
                    distinct(data) %>%
                    select(data)

O nosso objetivo é selecionar as diferentes datas em que ocorram corridas dentro da 99. A primeira opção é a mais simples de se entender, mas com muitas repetições. A segunda opção trará os mesmos resultados, mas de uma maneira mais direta e fácil de se ler.

Outra importante função da dplyr é a aplicação de filtros. Podemos, por exemplo, filtrar para utilizar apenas as corridas do dia anterior que será rodado o código:

corridasOntem <- filter(corridas, data = Sys.Date() - 1) %>%
                 select(latitude, longitude)

Notem que com as corridas filtradas, aproveitamos para selecionar apenas as latitudes e longitudes de origem das chamadas. Agora estamos com todos os dados prontos para gerar a visualização em mapa.

Gerando Mapas

Existem diversas bibliotecas disponíveis em R para se trabalhar com mapas. Porém, gostamos de utilizar a ggmap. Como padrão, instalamos e carregamos a biblioteca para utilizála:

install.packages("ggmap")
library(ggmap)

Com diversas funções disponíveis, a ggmap nos permite carregar e plotar mapas utilizando diversos serviços, como Google Maps, OpenStreetMap, Stamen Maps e CloudMade. Ainda, é possível solicitar diferentes estilos como satélite, elevação, híbrido ou ruas. Focamos em São Paulo e para isso passamos as coordenadas (longitude e latitude) para que a biblioteca baixe o mapa:

saoPaulo = c(-46.403654, -23.688747, -46.877542, -23.424317)
meuMapa = get_map(location = saoPaulo,
                  zoom = 11, 
                  source = "google",
                  maptype="roadmap")

Carregamos o mapa pelo Google Maps com o estilo de ruas para a geolocalização de São Paulo. O argumento zoom é um número inteiro entre 3 e 21 com valor padrão de 10, onde 3 representa o zoom do continent, 21 para prédios e 10 a cidade.

Zoom Level

Exibir esse mapa é tão simples quanto chamar uma única função, sendo ela a ggmap(ggmap, extent = “panel”, base_layer, maprange = FALSE, legend = “right”, padding = 0.02, darken = c(0, “black”), …), sendo o primeiro parâmetro o resultado do nosso get_map na variável meuMapa. Acima mostramos alguns dos resultados com diferentes valores de zoom na função.

ggmap(meuMapa)

A partir de agora, interagir com o mapa é muito mais simples. Imagine que o ggmap irá criar um plano cartesiano onde o eixo X é a longitude e o eixo Y é a latitude. O ponto inferior esquerdo, onde ocorre o cruzamento entre os eixos, representará as latitudes e longitudes mínimas informadas da área do mapa. Assim, plotar pontos no mapa basta utilizar as coordenadas geográficas e estarão disponíveis sem nenhuma necessidade de tratamento.

Por meio da função geom_point(mapping = NULL, data = NULL, stat = “identity”, position = “identity”, na.rm = FALSE, show.legend = NA, inherit.aes = TRUE, …) podemos plotar esses pontos no gráfico. Uma característica interessante dessa função é que ao invés de passarmos o resultado do ggmap, podemos utilizar o comando de adição (+) para concatenar os dados, facilitando o processo. Para efeitos de testes, vejamos alguns dados plotados no mapa:

ggmap(meuMapa, extent = "device") + geom_point(data = corridas[1:18,], aes(x = longitude, y = latitude, alpha = 0.5, size = 0.5))

image03

Selecionamos apenas uma pequena parcela das corridas utilizando o delimitador [1:18,]. A vírgula está presente para selecionar todas as colunas desses dados. Ao diminuirmos os tamanhos dos pontos e plotarmos mais dados, é possível ver as principais área de concentração de chamadas, ou ter uma visão mais detalhada de um ponto da cidade.

image00 image01

Animação

Mais do que tentar trazer algo novo para o Hack Day,  buscamos trazer inovação e novidades. Para isso, trouxemos a visualização animada dos dados da 99 para que nossos colaboradores pudessem visualizar de uma melhor maneira. Uma boa biblioteca para fazer isso é a animation.

install.packages("animation")
library(animation)

Apesar de bastante completa, permitindo exportar em HTML (diversas imagens animadas com um controlador em javascript), GIF utilizando o ImageMagick, SWF ou vídeo utilizando o ffmpeg.

As funções para exportar nos diferentes formatos são bastante parecidas. Pela facilidade de colocarmos aqui, utilizaremos o método da imagem GIF com o comando saveGIF(expr, movie.name = “animation.gif”, img.name = “Rplot”, convert = “convert”, cmd.fun, clean = TRUE, …), lembrando da necessidade do ImageMagick estar instalado na máquina.

Um passo importante é definir algumas configurações padrões da biblioteca animation com o comando abaixo:

oopt = ani.options(convert = "C:/Program Files/ImageMagick-6.9.3-Q16/convert.exe")

Definimos aqui o caminho para o ImageMagick caso não esteja no PATH do sistema operacional sendo utilizado. Para os casos onde se deseja exportar um vídeo, deve-se definir o caminho do ffmpeg. Em seguida, chamamos a função saveGIF onde o primeiro argumento será uma expressão que irá gerar os diferentes quadros da animação:

saveGIF({
  for(i in 1:NROW(datasDasCorridas$data)) {
    thisData <- filter(corridas, date == datasDasCorridas$data[i]) %>%
                select(longitude, latitude)
    displayMap = ggmap(meuMap, extent = "device") +
                 geom_point(data = thisData,
                            aes(x = startlong,
                                y = startlat),
                            alpha = 0.5,
                            size = 0.05)
    print(displayMap)
    ani.pause()
  }
}, movie.name = "animation.gif", img.name = "Rplot", clean = TRUE)

Faremos um loop pelas diferentes datas das corridas selecionadas de nosso banco de dados utilizando a função de loop for. Em seguida, utilizando a dplyr, filtramos os dados das corridas para a data selecionada e deixamos apenas as latitudes e longitudes a fim de minimizar a memória RAM utilizada. Como falamos anteriormente, a função ggmap irá gerar o mapa e a geom_point irá plotar os pontos das corridas, mas por uma questão técnica da bilbioteca animation, deixamos o mapa salvo em uma variável e, em seguida, utilizando a função print enviarmos para o buffer para que seja criado um frame da animação.

É possível customizar o intervalo entre um frame e outro, dentre outras carcterísticas, chamando a função ani.options com o argumento interval preenchido. Dentro do loop da animação, chamamos a ani.pause que irá parar a animação de acordo com este intervalo definido. O resultado será uma animação como esta:

 

Caso encontre erros como os listados abaixo:

I cannot find ImageMagick with convert = "convert"
but I can find it from the "Program Files" directory: C:\Program Files/ImageMagick-6.9.1-Q16/convert.exe
Executing: 
  "C:\Program Files\ImageMagick-6.9.1-Q16\convert.exe" -loop 0 -delay 100 Rplot1.png Rplot2.png Rplot3.png
Rplot4.png Rplot5.png Rplot6.png Rplot7.png Rplot8.png Rplot9.png Rplot10.png "animation.gif"
'C:\Program' is not recognized as an internal or external command,
operable program or batch file.
convert.exe: unable to load module `C:\Program Files\ImageMagick-6.9.1-Q16\modules\coders\IM_MOD_RL_PNG_.dll': The specified module could not be found.
@ error/module.c/OpenModule/1282.
convert.exe: no decode delegate for this image format `PNG' @ error/constitute.c/ReadImage/501.
convert.exe: unable to load module `C:\Program Files\ImageMagick-6.9.1-Q16\modules\coders\IM_MOD_RL_PNG_.dll': The specified module could not be found.
@ error/module.c/OpenModule/1282.
@ error/module.c/OpenModule/1282.
convert.exe: no decode delegate for this image format `PNG' @ error/constitute.c/ReadImage/501.
convert.exe: no images defined `animation.gif' @ error/convert.c/ConvertImageCommand/3230.
an error occurred in the conversion... see Notes in ?im.convert

Lembre-se de executar o R (ou o R-Studio) com permissões elevadas (administrador). Muitas vezes esses erros são comuns em máquinas windows.

Gostou? Entre em contato com o time de BI clicando aqui!

Sobre a segurança do Aplicativo 99Taxis

O aplicativo 99Taxis tornou muito mais seguro o serviço de táxi no Brasil. Só trabalhamos com motoristas e veículos devidamente cadastrados na prefeitura de cada cidade. Hoje são mais de 60 mil cadastrados, portanto o perfil da nossa frota reflete o da frota nacional.

São extremamente raros os problemas graves de atendimento, a qualidade melhorou significativamente nos 2 anos de nossa operação. Tanto pela orientação que fazemos aos motoristas, quanto pelo fato de saberem que estão sendo avaliados a cada corrida. Chamando via aplicativo, o passageiro tem a certeza de que o taxista está plenamente identificado e que a 99Taxis tem toda a sua documentação de registro junto à prefeitura.

Lamentamos profundamente quando ocorre um incidente ou agressão física ou psicológica numa corrida, seja iniciada por taxistas ou passageiros. Condenamos estas atitudes e tomamos providências enérgicas para que não se repitam.

Agressão é completamente inaceitável, não há nenhuma justificativa plausível. Nestes casos temos tolerância zero:

  • Confirmada a ocorrência de agressão física, a 99Taxis cessa imediatamente a relação com o taxista e este nunca mais receberá corridas pelo nosso aplicativo. Não há segunda chance.
  • Comunicamos ao DTP – Departamento de Transportes Públicos da Prefeitura, para investigação e providências adicionais. É o órgão que regulamenta as atividades dos taxistas e pode desde suspender até cassar a licença do taxista. A 99 não tem estes poderes, o máximo que pode fazer é excluir o taxista do aplicativo.
  • Ao passageiro fica facultado fazer um BO e pedir providências à polícia, algo que não podemos fazer em nome dele. Prestamos toda a assistência e nos colocamos à disposição das autoridades para colaborar com a investigação.

Hoje, a maior parte da frota de taxistas legalizados roda com aplicativo da 99. Isto nos ajuda a identificar quem comete uma barbárie. A imensa maioria dos taxistas é honesta e trabalhadora, presta um serviço de boa qualidade. Sabemos pelas avaliações que os passageiros dão no nosso aplicativo. Mas, entre os milhares de motoristas do país, tem alguns que precisam ser retirados das ruas e viram caso de polícia. Também há passageiros que se comportam de maneira inadequada causando problemas aos taxistas que prestam um bom serviço. Estes também são retirados da plataforma da 99 Taxis.

A 99Taxis promove 1 milhão de corridas por mês, já foram 9 milhões de corridas no Brasil em 2 anos de operação. Agressão é uma ocorrência muito rara, mesmo com o volume que temos, que é de longe o maior do país. O serviço de táxi vem melhorando muito com a nossa solução. Quando a maior parte das corridas ocorrerem pelo nosso aplicativo estes problemas podem ser erradicados em definitivo, pois os indivíduos que causam estes problemas estarão banidos do sistema.

Seguiremos na jornada para melhorar a qualidade do serviço de táxi no Brasil, orientando taxistas e passageiros em geral e removendo os que não usam o serviço de modo adequado.

Ariel Lambrecht
Fundador da 99Taxis

evening dresses online australia,christian louboutin sale uk,ralph lauren outlet,ralph lauren italia shop online,michael kors uk