No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Compra acceso a todo Platzi por 1 a帽o

Antes: $249

Currency
$209/a帽o

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscr铆bete

Termina en:

14D
4H
32M
10S

Transformaciones y acciones

8/25
Recursos

Aportes 22

Preguntas 10

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

en mi opinion el profesor debe ser un poco mas explicito

D铆ganme si esto no es bello?

Si quieren correr el c贸digo de la clase sigan este notebook de Colab: https://colab.research.google.com/drive/1dJiHM8TdwvuTJRYa84Xxnbp0ktCNk6b2?usp=sharing
En la clase corr铆 todo el c贸digo del notebook menos la parte que dice 鈥楽ample鈥

En entorno windows

import findspark
findspark.init()

from pyspark import SparkContext
sc = SparkContext(master=鈥渓ocal鈥, appName=鈥淭ransformacionesyAcciones鈥)

rdd = sc.textFile(鈥楧:\CompartidaMV\data.csv鈥)
.map(lambda line : line.split(","))

rdd.take(20)

[[鈥楽tate鈥, 鈥楥olor鈥, 鈥楥ount鈥橾,
[鈥楾X鈥, 鈥楻ed鈥, 鈥20鈥橾,
[鈥楴V鈥, 鈥楤lue鈥, 鈥66鈥橾,
[鈥楥O鈥, 鈥楤lue鈥, 鈥79鈥橾,
[鈥極R鈥, 鈥楤lue鈥, 鈥71鈥橾,
[鈥榃A鈥, 鈥榊ellow鈥, 鈥93鈥橾,
[鈥榃Y鈥, 鈥楤lue鈥, 鈥16鈥橾,
[鈥楥A鈥, 鈥榊ellow鈥, 鈥53鈥橾,
[鈥榃A鈥, 鈥楪reen鈥, 鈥60鈥橾,
[鈥極R鈥, 鈥楪reen鈥, 鈥71鈥橾,
[鈥楾X鈥, 鈥楪reen鈥, 鈥68鈥橾,
[鈥楴V鈥, 鈥楪reen鈥, 鈥59鈥橾,
[鈥楢Z鈥, 鈥楤rown鈥, 鈥95鈥橾,
[鈥榃A鈥, 鈥榊ellow鈥, 鈥20鈥橾,
[鈥楢Z鈥, 鈥楤lue鈥, 鈥75鈥橾,
[鈥極R鈥, 鈥楤rown鈥, 鈥72鈥橾,
[鈥楴V鈥, 鈥楻ed鈥, 鈥98鈥橾,
[鈥榃Y鈥, 鈥極range鈥, 鈥45鈥橾,
[鈥楥O鈥, 鈥楤lue鈥, 鈥52鈥橾,
[鈥楾X鈥, 鈥楤rown鈥, 鈥94鈥橾]

Si se les presenta el siguiente error:

raise Exception(("Python in worker has different version %s than that in " +
Exception: Python in worker has different version 3.8 than that in driver 3.7, PySpark cannot run with different minor versions. Please check environment variables PYSPARK_PYTHON and PYSPARK_DRIVER_PYTHON are correctly set.

El Driver c贸mo el worker poseen diferentes versiones. En mi caso esto es debido a que en mi sistema (OSX) tengo instalado de base python 3.8 y el entorno anaconda que ocupo tiene instalado Python 3.7, ya que es la 煤ltima versi贸n que por el momento soporta Pyspark.
La soluci贸n es agregar las siguientes lineas al inicio de su Jupyter Noteebook (antes de cargar SparkContext), cuidando sustituir el parametro: env_pyspark_3_7, por el nombre de su entorno anaconda

import os
os.environ['PYSPARK_DRIVER_PYTHON'] = '/opt/anaconda3/envs/env_pyspark_3_7/bin/python3'
os.environ['PYSPARK_PYTHON'] = '/opt/anaconda3/envs/env_pyspark_3_7/bin/python3'```

con humildad les comparto mis apuntes sobre el curso, es buen铆simo, y si le hacen fork dejen su Estrellita en el repo, devuelvan algo a la comunidad de platzi, y nunca paren de aprender.

https://github.com/rb-one/Cuso_Introductorio_de_Spark/blob/master/Notes/notes.md

Listar y Cargar Archivo en Windows:

Si alguno de ustedes est谩 utilizando Docker, tengan en mente que para poder tener los archivos del curso van a necesitar compartir un volumen en el cual previamente hayan hecho el git clone.

Carga de crimenes de Nueva York.

from pyspark import SparkContext
sc = SparkContext(master="local", appName="TransformacionesyAcciones")

path= "/Spark Most Current/Apache Spark-Scala Fundamentals/Chapter 2. Introduction to RDDs/Documents/"
nypdRDD = sc.textFile(path+"NYPD_7_Major_Felony_Incidents.csv").\
            map(lambda line: line.split(","))
print(nypdRDD.take(3))
[['OBJECTID',
  'Identifier',
  'Occurrence Date',
  'Day of Week',
  'Occurrence Month',
  'Occurrence Day',
  'Occurrence Year',
  'Occurrence Hour',
  'CompStat Month',
  'CompStat Day',
  'CompStat Year',
  'Offense',
  'Offense Classification',
  'Sector',
  'Precinct',
  'Borough',
  'Jurisdiction',
  'XCoordinate',
  'YCoordinate',
  'Location 1'],
 ['1',
  'f070032d',
  '09/06/1940 07:30:00 PM',
  'Friday',
  'Sep',
  '6',
  '1940',
  '19',
  '9',
  '7',
  '2010',
  'BURGLARY',
  'FELONY',
  'D',
  '66',
  'BROOKLYN',
  'N.Y. POLICE DEPT',
  '987478',
  '166141',
  '"(40.6227027620001',
  ' -73.9883732929999)"'],
 ['2',
  'c6245d4d',
  '12/14/1968 12:20:00 AM',
  'Saturday',
  'Dec',
  '14',
  '1968',
  '0',
  '12',
  '14',
  '2008',
  'GRAND LARCENY',
  'FELONY',
  'G',
  '28',
  'MANHATTAN',
  'N.Y. POLICE DEPT',
  '996470',
  '232106',
  '"(40.8037530600001',
  ' -73.955861904)"']]```

Estoy estudiando en la noche y me lastim贸 la luz blanca, si quieren cambiar el theme de su Jupyter Notebook:

En la terminal de su entorno en Anaconda:

<conda install -c conda-forge jupyterthemes>

En su Notebook:

<from jupyterthemes import get_themes
import jupyterthemes as jt
from jupyterthemes.stylefx import set_nb_theme
set_nb_theme('chesterish')> 

El profesor es muy poco explicito

hola tengo este error, podrian ayudarme ?

B脕SICOS SOBRE RDDs CON EJEMPLO
La funci贸n map() te permite transformar o aplicar una funcion a un iterable sin necesidad de usar un ciclo. En este caso el iterable ser铆a el RDD (imag铆nalo como si fuera una lista y estas aplicando una funci贸n a cada item de la lista), y la funci贸n que se le esta aplicando es una funci贸n lambda que hace mas o menos lo que nosotros queramos. Durante el curso la funci贸n nos permite ordenar el RDD que ya creamos seleccionando los elementos del RDD que queramos. Recuerda que al trabajar los RDDs como pares llave-valor (RDD = (key, (v1,v2)) para poder ver que elemento est谩 en que posici贸n puedes intentar haciendo un take y luego probando las posiciones (listas dentro de listas, tuplas dentro de listas, etc.)

  • Crear el RDD:

path聽=聽"/content/gdrive/My聽Drive/DEVELOPER/PYSPARK_COLAB/curso-apache-spark-platzi/files/"


*#If聽you聽don't聽want聽the聽whole聽file聽in聽one聽column聽use聽map聽for聽this*

olimpicTeamsRDD聽=聽sc.textFile(path+"paises.csv")聽\

.map(lambda聽line:聽line.split(","))

  • Visualizar los RDDs y buscar la posicion que quiero (en este caso quiero la sigla)

olimpicTeamsRDD.take(10), olimpicTeamsRDD.take(2)[1][2]

interesante

Carga del Cl谩sico cdv de los pokemones

Uno esperar铆a poder encontrar en platzi cursos desde los m谩s b谩sicos pasando por intermedio y avanzado y super avanzado. Hay cursos como este que se quedan en lo b谩sico , ah铆 es cuando toca acudir a otras plataformas de aprendizaje.

Muy confusos todos los conceptos de los que habla el profesor, este curso deber铆a explicar los conceptos como Job, paralelizaciones, grafos, y un largo etc.

Hola Gente, solo queria decirles que tuve problemas con el proceso de mostrar los datos, particularmente todo funcionaba excepto la ruta, casi que no podia correr el comando

equiposOlimpicosRDD.take(10)

porque al intentarlo SIEMPRE me salia un error, pues bien la solucion se las muestro seguidamente.

from pyspark import SparkContext
sc = SparkContext(master="local", appName="transformaciones y acciones")
equiposOlimpicosRDD = sc.textFile("C:\\xxx\\xxx\\xxx\\xxx\\xxx\\xxx\\xxx\\paises.csv").map(lambda line:line.split(","))
equiposOlimpicosRDD.take(10)

al final los resultados aparecieron en la notebook, la razon era que el backslash toca escaparlo y eso se hace con otro backslash, de ahi que se tenga que usar un doble backslash pero despues funciono, creanme que hice de todo y la verdad los mensajes de error no funcionaron, hasta que segui los pasos en el comentario de @Ignacio Buscio y luego pude ver el error de sintaxis y 5 minutos despues lo habia solucionado, pero desde ayer estaba intentandolo. Si les sirve o si saben porque pasa, estare pendiente a sus comentarios 馃槃

A mi me sali贸 en Windows con el siguiente c贸digo:

No estoy usando Jupyter para hacer los ejemplos. Estoy ejecutando los archivos .py desde cmd. Algo que note es que poniendo 鈥渓ocal鈥 en master. No me sale la app en la pagina del worker. Pero si pongo 鈥渟park://ip:7077鈥 si me aparece.

from pyspark import SparkContext

sc = SparkContext(master = "spark://_IP_:7077", appName="TransformacionesyAcciones")

rdd1 = sc.parallelize([1,2,3])

res = rdd1.collect()

print(res)

sc.stop()

Si como a mi, tras escribir y correr

sc = SparkContext(master="local", appName="transformacionesYAcciones")

les sale este error en Mac OS:

ValueError: Cannot run multiple SparkContexts at once; existing SparkContext(app=PySparkShell, master=local[*]) created by <module> at /usr/local/spark/python/pyspark/shell.py:59

significa que previamente se ha inicializado SparkContext, por lo que debes cerrar spark y volver a iniciarlo con el
siguiente comando

sc.stop()

Despu茅s de esto ya puedes continuar con tu c贸digo de manera regular.

Fuente: https://programmersought.com/article/62292781690/

En Windows tuve problemas de este tipo: interpretation of escape characters. Dejo mi ejemplo

root = os.path.abspath(r"C:\Users\usuarioX\Desktop\EscuelaDeDataScience\CursoIntroductorioDeSpark\curso-apache-spark-platzi-master\files\paises.csv")

equiposOlimpicosRDD = sc.textFile(root).map( lambda line: line.split(",") )
equiposOlimpicosRDD.take(10)
sc.stop()

Esta bastante interesante el curso, estoy trabajando con google colab, solo hay algo que pasa en google colab y es que la interfaz gr谩fica de spark no se puede abrir, si alguien sabe como abrir la interfaz gr谩fica de spark desde google colab y lo comparte le estar铆a muy agradecido. Por lo demas les comparto el c贸digo de la clase en google colab.

https://colab.research.google.com/drive/1mWMCGFnIFH-sEQRvYdZfugqk-XW6VPaX?usp=sharing