Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
pyarrow.RecordBatch üzerinde hem giriş hem de çıkış olarak gerçekleştirilen bir Python yerel işlevi kullanarak geçerli DataFrame'deki toplu işlemlerin yineleyicisini eşler ve sonucu DataFrame olarak döndürür.
Sözdizimi
mapInArrow(func: "ArrowMapIterFunction", schema: Union[StructType, str], barrier: bool = False, profile: Optional[ResourceProfile] = None)
Parametreler
| Parametre | Türü | Açıklama |
|---|---|---|
func |
function |
pyarrow.RecordBatchs yineleyicisini alan ve pyarrow.RecordBatchs yineleyicisi veren Python yerel işlevi. |
schema |
DataType veya str | PySpark'ta değerinin func dönüş türü. Değer bir pyspark.sql.types.DataType nesne veya DDL biçimli bir tür dizesi olabilir. |
barrier |
bool, isteğe bağlı, varsayılan False | Aşamadaki tüm Python çalışanlarının eşzamanlı olarak başlatılmasını sağlamak için engel modu yürütmeyi kullanın. |
profile |
ResourceProfile, isteğe bağlı | mapInArrow için kullanılacak isteğe bağlı ResourceProfile. |
İadeler
DataFrame
Örnekler
import pyarrow as pa
df = spark.createDataFrame([(1, 21), (2, 30)], ("id", "age"))
def filter_func(iterator):
for batch in iterator:
pdf = batch.to_pandas()
yield pa.RecordBatch.from_pandas(pdf[pdf.id == 1])
df.mapInArrow(filter_func, df.schema).show()
# +---+---+
# | id|age|
# +---+---+
# | 1| 21|
# +---+---+
df.mapInArrow(filter_func, df.schema, barrier=True).collect()
# [Row(id=1, age=21)]