PySpark के साथ Big Data Fundamentals
Upendra Devisetty
Science Analyst, CyVerse
DataFrame ऑपरेशन: Transformations और Actions
DataFrame Transformations:
DataFrame Actions:
Correction: printSchema() किसी भी Spark dataset/dataframe की method है, action नहीं
select() transformation DataFrame में कॉलम का subset चुनता हैdf_id_age = test.select('Age')
show() action DataFrame की पहली 20 पंक्तियाँ प्रिंट करता हैdf_id_age.show(3)
+---+
|Age|
+---+
| 17|
| 17|
| 17|
+---+
only showing top 3 rows
filter() transformation शर्त के आधार पर पंक्तियाँ फ़िल्टर करता हैnew_df_age21 = new_df.filter(new_df.Age > 21)
new_df_age21.show(3)
+-------+------+---+
|User_ID|Gender|Age|
+-------+------+---+
|1000002| M| 55|
|1000003| M| 26|
|1000004| M| 46|
+-------+------+---+
only showing top 3 rows
groupby() ऑपरेशन किसी वैरिएबल के अनुसार ग्रुप कर सकता हैtest_df_age_group = test_df.groupby('Age')
test_df_age_group.count().show(3)
+---+------+
|Age| count|
+---+------+
| 26|219587|
| 17| 4|
| 55| 21504|
+---+------+
only showing top 3 rows
orderby() ऑपरेशन एक या अधिक कॉलम के आधार पर DataFrame को sort करता हैtest_df_age_group.count().orderBy('Age').show(3)
+---+-----+
|Age|count|
+---+-----+
| 0|15098|
| 17| 4|
| 18|99660|
+---+-----+
only showing top 3 rows
dropDuplicates() DataFrame की डुप्लिकेट पंक्तियाँ हटाता हैtest_df_no_dup = test_df.select('User_ID','Gender', 'Age').dropDuplicates()
test_df_no_dup.count()
5892
withColumnRenamed() DataFrame में किसी कॉलम का नाम बदलता हैtest_df_sex = test_df.withColumnRenamed('Gender', 'Sex')
test_df_sex.show(3)
+-------+---+---+
|User_ID|Sex|Age|
+-------+---+---+
|1000001| F| 17|
|1000001| F| 17|
|1000001| F| 17|
+-------+---+---+
printSchema() ऑपरेशन DataFrame में कॉलम के टाइप प्रिंट करता हैtest_df.printSchema()
|-- User_ID: integer (nullable = true)
|-- Product_ID: string (nullable = true)
|-- Gender: string (nullable = true)
|-- Age: string (nullable = true)
|-- Occupation: integer (nullable = true)
|-- Purchase: integer (nullable = true)
columns ऑपरेटर DataFrame के कॉलम प्रिंट करता हैtest_df.columns
['User_ID', 'Gender', 'Age']
describe() ऑपरेशन DataFrame में numerical कॉलम का summary statistics compute करता हैtest_df.describe().show()
+-------+------------------+------+------------------+
|summary| User_ID|Gender| Age|
+-------+------------------+------+------------------+
| count| 550068|550068| 550068|
| mean|1003028.8424013031| null|30.382052764385495|
| stddev|1727.5915855307312| null|11.866105189533554|
| min| 1000001| F| 0|
| max| 1006040| M| 55|
+-------+------------------+------+------------------+
PySpark के साथ Big Data Fundamentals