Baixe o app para aproveitar ainda mais
Prévia do material em texto
08/03/2022 11:49 Cosmos · Cosmos https://kroton.platosedu.io/lms/m/aluno/disciplina/index/2443614/3222480 1/6 Linguagens de programação para ciência de dados (Python com Spark) Professor(a): Yuri Vasconcelos de Almeida Sá (Especialização) 1) 2) 3) Prepare-se! Chegou a hora de você testar o conhecimento adquirido nesta disciplina. A Avaliação Virtual (AV) é composta por questões objetivas e corresponde a 100% da média final. Você tem até cinco tentativas para “Enviar” as questões, que são automaticamente corrigidas. Você pode responder as questões consultando o material de estudos, mas lembre-se de cumprir o prazo estabelecido. Boa prova! O Spark vem ganhando grande notoriedade e aumento de sua utilização, isso acontece porque ele tem alta taxa de escalabilidade e desempenho. Como o Spark agiliza a execução de tarefas sobre o mesmo conjunto de dados? Alternativas: Movendo os dados durante seu processamento. Contendo poucas bibliotecas e pouca diversidade de ferramentas. Compartilhando dados em memória através de grafos direcionais acíclicos. CORRETO Utilizando a estrutura HDFS padrão do Hadoop. Obtendo resultados intermediários e os armazenando diretamente em disco. Código da questão: 48939 O Apache Spark é uma plataforma de computação em cluster projetada para trabalhar com grande volume de dados (Big Data) de forma simples e eficiente (KARAU, 2015). O projeto Spark foi desenvolvido na linguagem ________ e executa em uma ____________. Além da API principal do Spark, existem diversas bibliotecas adicionais para processamento de dados, SQL, grafos e aprendizado de máquina (machine learning). O Apache Spark contém duas estruturas de dados para trabalhar com coleções distribuídas: ____________ e _____________. Assinale a alternativa que completa adequadamente as lacunas. Alternativas: Scala; máquina virtual Java; DataFrame; DataSet. CORRETO Scala; máquina virtual Linux; DataFrame; ArrayList. Java; máquina virtual Java; DataFrame; DataSet. Python; máquina virtual Java; DataFrame; ArrayList. Python; máquina virtual Java; Hashset; ArrayLis.t Código da questão: 48971 A organização e visualização dos dados pode ser usada no processo de tomada de decisão em empresas. Através de inspeção e análises visuais é possível identificar novos padrões ou anormalidades nos dados. Sobre visualização de dados em Python, Matplotlib e Pandas, assinale a alternativa correta: Resolução comentada: O compartilhamento de dados em memória possibilita a otimização e agiliza o processamento dos dados, isso acontece pois acaba evitando a persistência dos dados em disco e o tráfego dos dados em rede, que são gargalos que podem causar lentidão. Resolução comentada: O Apache Spark foi desenvolvido na linguagem Scala, em 2009, pelo grupo de pesquisa do AMPLab da Universidade de Califórnia – Berkeley, e executado em uma máquina virtual Java (JVM). O Apache Spark contém duas estruturas de dados para trabalhar com coleções distribuídas: DataFrame e DataSet. Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k 08/03/2022 11:49 Cosmos · Cosmos https://kroton.platosedu.io/lms/m/aluno/disciplina/index/2443614/3222480 2/6 4) 5) Alternativas: Matplotlib.pyplot é uma coleção de funções com sintaxe parecida com a linguagem de programação MATLAB. O Matplotlib foi desenvolvido utilizando o MATLAB, portanto, é necessária a instalação do MATLAB e do Python. A API Pandas não tem suporte para a estrutura de dados dicionário do Python. A API do Pandas contém funções para obter informações de páginas HTML. CORRETO A função Matplotlib.pyplot.setProperties é responsável para alterar algumas propriedades do gráfico, tais como: cor e estilos das linhas, legendas ou eixos. Objetos DataFrames e Series são as principais estruturas de dados da biblioteca Matplotlib. Código da questão: 48955 Sobre os conceitos de visualização e análise de dados em Python, Matplotlib e Pandas, considere as seguintes afirmações: I. A API do Pandas contém funções para obter informações de páginas HTML, através das funções read_html e to_html. II. Usando as funções pandas.DataFrame.read_csv e pandas.DataFrame.show podemos fazer a leitura e visualizar todas as linhas contidas em um arquivo CSV. III. Através do método pandas.DataFrame.drop, podemos apagar colunas ou linhas de um objeto DataFrame. IV. A função pandas.DataFrame.describe retorna as estatísticas descritivas das colunas de um objeto DataFrame. São verdadeiras: Alternativas: II - III - IV. I - II - III. I - III. I - III - IV. CORRETO Todas as afirmações. Código da questão: 48957 A análise de dados em tempo real (Real Time Analytics) é referida ao processo de análise de grande volume de dados (Big Data) no momento em que é produzido ou usado. Dos arquivos de logs de servidores e/ou dispositivos aos dados do sensor, os cientistas de Resolução comentada: A API do Pandas contém funções para obter informações de páginas HTML, através das funções read_html() e to_html(). Matplotlib.pyplot é uma coleção de funções no estilo de comando que fazem o matplotlib funcionar como MATLAB. Para utilizar a API Matplotlib é necessário apenas a instalação do Python. A função Matplotlib.pyplot.setp() é responsável para alterar algumas propriedades do gráfico, tais como: cor e estilos da linha, legendas, eixos etc. A API Pandas tem suporte para a estrutura de dados dicionário do Python, utilizando a estrutura de dados pandas.DataFrames. Objetos DataFrames e Series são as principais estruturas de dados da biblioteca Pandas. Resolução comentada: Usando as funções pandas.DataFrame.read_csv e pandas.DataFrame.head podemos fazer a leitura e visualizar todas as linhas contidas em um arquivo CSV. Portanto, a alternativa II é falsa. A função show é usada para plotar um gráfico e não visualizar as linhas de um arquivo. Através do método pandas.DataFrame.drop, podemos apagar colunas ou linhas de um objeto DataFrame. Portanto, a alternativa III é verdadeira. Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k 08/03/2022 11:49 Cosmos · Cosmos https://kroton.platosedu.io/lms/m/aluno/disciplina/index/2443614/3222480 3/6 6) dados estão cada vez mais tendo que lidar com fluxos (streaming) de dados. Esses dados chegam em um fluxo constante, geralmente de várias aplicações simultaneamente. Sobre Big Data e Apache Spark Streaming, assinale a alternativa correta. Alternativas: A biblioteca Apache Spark Streaming pode ser usada para processar dados de streaming em tempo real de diferentes fontes, como sensores, redes sociais e transações online, e os resultados gerados podem ser armazenados em software como Kafka, HDFS, Cassandra e Elasticsearch. CORRETO Resilient Distributed Dataset (RDD) é considerado a estrutura de dados mais importantes no PySpark, e uma característica importante dos RDDs é que eles não são objetos imutáveis. A API Apache Spark Streaming tem suporte para as linguagens de programação Java, Scala, Python e R. Em Python, os DataFrames de streaming podem ser criados por meio da interface DataStreamReader retornada por SparkSession.createStream(). No processamento em streaming ocorre a análise dos dados que já foram armazenados por um tempo. Esses dados geralmente podem ser em arquivo ou banco de dados, entre outros. Código da questão: 48975 Analise as sentenças sobre o framework Apache Spark e a linguagem de programação Python. I. O framework Apache Spark tem suporte para outras ferramentas de armazenamento de Big Data, como o Elasticsearch, Cassandra e MongoDB. II. O framework Apache Spark tem como principal característica o processamento de grande quantidade de dados (Big Data) com alta latência e tem suporte para as seguintes linguagens de programação: C, Java, R, Python, Scala e Matlab. III. Spark Context é o objeto (ou uma classe) que faz a conexão do Spark ao algoritmo que está sendo desenvolvido. Ele podeser acessado como uma variável em um programa para utilizar os seus recursos. IV. Utilizando a biblioteca Spark SQL é possível obter os dados de arquivos semiestruturados (XML, CSV e JSON) e salvar essas informações em um banco de dados relacional (MySQL, Postgres, Oracle). Assinale todas as afirmações verdadeiras Alternativas: I - II - III. I - III - IV. CORRETO Apenas IV. I - II. Apenas I. Código da questão: 48974 Resolução comentada: No processamento em batch ocorre a análise dos dados que já foram armazenados por um tempo, portanto a alternativa a. é falsa. Os objetos Resilient Distributed Dataset (RDD) são considerados a estrutura de dados mais importante no PySpark; uma característica importante dos RDDs é que são objetos imutáveis, portanto a alternativa b. é falsa. A API Apache Spark Streaming não tem suporte para a linguagem de programação R, portanto a alternativa c. é falsa. Em Python, os DataFrames de streaming podem ser criados por meio da interface DataStreamReader retornada por SparkSession.readStream(), então a alternativa e. é falsa. Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k 08/03/2022 11:49 Cosmos · Cosmos https://kroton.platosedu.io/lms/m/aluno/disciplina/index/2443614/3222480 4/6 7) 8) Estatística e probabilidade são extremamente importantes para trabalhar na área de ciência de dados, assim como em outras áreas, como medicina, ciências biológicas, psicologia, engenharia, computação etc. Sobre Estatística, Probabilidade e Python, assinale a alternativa correta. Alternativas: A estatística é uma área da matemática que estuda as chances de ocorrência de um determinado experimento ou evento. A biblioteca NumPy é bastante utilizada para realizar cálculos em arrays e matrizes multidimensionais e faz parte do pacote principal do Python, não sendo necessária sua instalação. A biblioteca Pandas é um módulo Python que fornece classes e funções para a estimativa de muitos modelos estatísticos, bem como para a realização de testes e a exploração de dados estatísticos. A estatística é a área responsável pela coleta, organização e interpretação de dados experimentais e pela extrapolação dos resultados da amostra para a população. CORRETO O desvio padrão é usado quando queremos separar a metade maior e a metade menor de uma amostra, uma população ou uma distribuição de probabilidade. Código da questão: 48960 Sobre os conceitos de visualização de dados em Python, Numpy, Matplotlib e Pandas, considere as seguintes afirmações: ( ) Utilizando algumas bibliotecas do Python como Numpy, Pandas e Matplotlib é possível criar e visualizar histogramas. ( ) O histograma de uma imagem digital (preto e branco) indica o número de pixels que a imagem tem em determinado nível de cinza, que varia de 0 a 255. ( ) Na versão atual do Matplotlib é possível somente criar plotagem em 3D. ( ) A biblioteca Pandas é uma poderosa biblioteca do Python usada principalmente para realizar cálculos em arrays e matrizes multidimensionais. Assinale a alternativa que contenha a sequência correta. Alternativas: F – F – V – V. V – F – F – V. V – V – F – F. CORRETO V – V – F – V. F – V – V – F. Resolução comentada: A mediana é usado quando queremos separar a metade maior e a metade menor de uma amostra, uma população ou uma distribuição de probabilidade, portanto a alternativa b é falsa. A biblioteca numpy não faz parte do pacote principal do Python, sendo necessário sua instalação manual. Então a alternativa c é falsa. A biblioteca Statsmodels é um módulo Python que fornece classes e funções para a estimativa de muitos modelos estatísticos, portanto a alternativa d é falsa. A probabilidade é uma área da matemática que estuda as chances de ocorrência de experimentos são calculadas, então a alternativa e é falsa. Resolução comentada: Na versão atual do Matplotlib é possível criar plotagem em 2D e 3D. Portanto, a terceira afirmação é falsa. A biblioteca NumPy é uma poderosa biblioteca do Python usada principalmente para realizar cálculos em arrays e matrizes multidimensionais. Portanto, a quarta afirmação é falsa. O Pandas é um pacote Python que fornece estruturas de dados rápidas, flexíveis e expressivas, projetadas para facilitar o trabalho com dados relacionais. Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k 08/03/2022 11:49 Cosmos · Cosmos https://kroton.platosedu.io/lms/m/aluno/disciplina/index/2443614/3222480 5/6 9) 10) Código da questão: 60241 I. O framework Apache Spark Streaming tem suporte para outras ferramentas de armazenamento de Big Data como o Cassandra e MongoDB e Apache Kafka. II. Os principais recursos do Apache Kafka são as mensagens. Cada mensagem em Kafka consiste em uma chave, um valor e data/hora. Todos os eventos podem ser resumidos em mensagens, sendo consumidas e produzidas através de tópicos. III. O Elasticsearch é uma ferramenta de distribuição gratuita e utilizada para realização de buscas e análise de dados em grandes volumes de dados. Para sua instalação, é necessária a instalação de uma JVM (Java Virtual Machine). IV. Para fazer a integração do Elasticsearch com Apache Spark, é necessário fazer o download do conector/adaptador chamado elasticsearch-hadoop, podendo ser feito via comando pip install elasticsearch-hadoop. Assinale a alternativa correta. Alternativas: I - III - IV. I - IV. Apenas IV. Todas as afirmações estão corretas. I - II - III. CORRETO Código da questão: 48979 Organização e visualização dos dados são tarefas essenciais para a área de ciência de dados. A visualização é uma técnica bastante utilizada e consiste na criação de imagens, diagramas, histogramas, gráficos ou animação para melhor representar a informação. Matplotlib é a principal biblioteca de plotagem científica em Python. Ela suporta visualização interativa e não interativa e fornece ampla variedade de tipos de plotagem (ROUGIER, 2019). O Pandas é um pacote Python que fornece estruturas de dados rápidas, flexíveis e expressivas, projetadas para facilitar o trabalho com dados relacionais. Os dados manipulados no Pandas são frequentemente usados para trabalhar com análises estatísticas no SciPy, plotando funções do Matplotlib e algoritmos de aprendizado de máquina no Scikit-learn (MCKINNEY, 2019). Fontes: MCKINNEY, W., PyData Development Team. pandas: powerful Python data analysis toolkit. Release 0.25.3, Python for High Performance and Scientific Computing, 2019. Disponível em https://pandas.pydata.org/pandas-docs/stable/pandas.pdf. Acesso em: 28 out. 2019. ROUGIER, N, P. Scientific Visualization – Python & Matplotlib - Scientific Python — Volume II, 2019. Disponível em https://github.com/rougier/scientific-visualization-book. Acesso em: 28 out. 2019. Analise as seguintes afirmações, indicando aquelas verdadeiras: I. Utilizando a biblioteca Pandas, é possível criar gráficos a partir de informações contidas em arquivo MS Excel. II. A biblioteca Matplotlib não tem suporte para a criação de subgráficos (subplots). III. A função Matplotlib.pyplot.setp é responsável para alterar algumas propriedades do gráfico, tais como: cor e estilos da linha, legendas ou eixos. IV. Pandas fornece suporte para manipulação de arquivos Open Document Spreadsheet (ODS). Alternativas: I -, III - IV. CORRETO I - II - IV. II - III - IV. Resolução comentada: Para fazer a integração do Elasticsearch com Apache Spark é necessário fazer a instalação do elasticsearch-hadoop, porém até o momento não é possível fazer via comando pip install. Portando, a opção IV é falsa e todas as demais são corretas. Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k 08/03/2022 11:49 Cosmos · Cosmos https://kroton.platosedu.io/lms/m/aluno/disciplina/index/2443614/3222480 6/6 Apenas III. Todas as afirmações são verdadeiras.. Código daquestão: 48959 Resolução comentada: A biblioteca Matplotlib tem suporte para criação de gráficos e subgráficos. Portanto a opção II é falsa. Arquivos e Links Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k Avaliação enviada com sucessoc h e c k
Compartilhar