На основе документа PySpark:
DataFrame эквивалентен реляционной таблице в Spark SQL и может быть создан с использованием различных функций в SQLContext
Значение Я могу использовать Select для отображения значения столбца, однако иногда я вижу, что вместо них используются эти два эквивалентных кода:
# df is a sample DataFrame with column a
df.a
# or
df['a']
И иногда, когда я использую select, я могу получить ошибку вместо них и тиски иногда мне приходится использовать Select.
Например, это DataFrame для поиска собаки по заданной проблеме с изображением:
joined_df.printSchema()
root
|-- folder: string (nullable = true)
|-- filename: string (nullable = true)
|-- width: string (nullable = true)
|-- height: string (nullable = true)
|-- dog_list: array (nullable = true)
| |-- element: string (containsNull = true)
Если я хочу выбрать детали собаки и показать В 10 строках этот код показывает ошибку:
print(joined_df.dog_list.show(truncate=False))
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
print(joined_df.dog_list.show(truncate=False))
TypeError: 'Column' object is not callable
И это не так:
print(joined_df.select('dog_list').show(truncate=False))
Вопрос1: Когда мне нужно использовать Select, а когда мне нужно использовать df.a или df ["a"]
Вопрос2: что означает ошибка выше? Объект «Столбец» не может быть вызван