डेटा इकट्ठा करना

extension Collection
extension Collection where Element: Collatable
  • पुन: व्यवस्थित किए गए तत्वों के साथ इस संग्रह का एक दृश्य लौटाता है, जैसे दिए गए स्थान पर तत्व पहले समाप्त होता है।

    i तक के संग्रह के बाद के क्रम को i से शुरू होने वाले बाद के क्रम में स्थानांतरित कर दिया जाता है। प्रत्येक विभाजन के भीतर तत्वों का क्रम अन्यथा अपरिवर्तित है।

    let a = [10, 20, 30, 40, 50, 60, 70]
    let r = a.rotated(shiftingToStart: 3)
    // r.elementsEqual([40, 50, 60, 70, 10, 20, 30])
    

    घोषणा

    func rotated(shiftingToStart i: Index) -> RotatedCollection<Self>

    पैरामीटर

    i

    संग्रह में वह स्थान जो परिणाम में प्रथम होना चाहिए। i संग्रह का एक वैध सूचकांक होना चाहिए।

    प्रतिलाभ की मात्रा

    इस संग्रह के तत्वों पर एक घुमाया हुआ दृश्य, जैसे कि i पर तत्व पहले है।

  • घोषणा

    func stablyPartitioned(
      isSuffixElement p: (Element) -> Bool
    ) -> [Element]
  • संग्रह में पहले तत्व का सूचकांक लौटाता है जो विधेय से मेल खाता है।

    संग्रह को पहले से ही विधेय के अनुसार विभाजित किया जाना चाहिए, जैसे कि self.partition(by: predicate) पहले ही बुलाया जा चुका हो।

    • दक्षता: अधिकांश लॉग (एन) में predicate का आह्वान, जहां एन self की लंबाई है। यदि self RandomAccessCollection के अनुरूप है, तो अधिकांश लॉग (एन) इंडेक्स ऑफसेटिंग ऑपरेशंस में; अधिक से अधिक एन ऐसे ऑपरेशन अन्यथा।

    घोषणा

    func partitionPoint(
      where predicate: (Element) throws -> Bool
    ) rethrows -> Index
  • self.map(transform) लौटाता है, जिसकी गणना minBatchSize या minBatchSize + 1 आकार के self के टुकड़ों पर समानांतर में की जाती है।

    आवश्यक है

    transform एकाधिक थ्रेड से कॉल करना सुरक्षित है।

    घोषणा

    func concurrentMap<B>(
      minBatchSize: Int = 1,
      _ transform: (Element) -> B
    ) -> [B]
  • किसी भी संग्रह के तत्वों को पढ़े बिना selection द्वारा निर्दिष्ट स्थिति में और क्रम में self के तत्वों का संग्रह लौटाता है।

    जटिलता

    हे(1)

    घोषणा

    public func sampled<Selection: Collection>(at selection: Selection)
      -> Sampling<Self, Selection>
  • self के सबसे लंबे गैर-अतिव्यापी स्लाइस लौटाता है, जो इसके पहले तत्व से शुरू होता है, जिसमें batchSize की अधिकतम लंबाई होती है।

    घोषणा

    public func inBatches(of batchSize: Int) -> Slices<Self>
  • self में n वाँ स्थान लौटाता है।

    घोषणा

    func index(atOffset n: Int) -> Index
उपलब्ध है जहां `एलिमेंट`: `कोलैटेबल`
  • self के तत्वों को एकत्रित करने का परिणाम।

    घोषणा

    public var collated: Element { get }
  • self के तत्वों को वापस लौटाता है, padValue के साथ अधिकतम आकार में गद्देदार और मिलान किया जाता है।

    घोषणा

    public func paddedAndCollated<Scalar: Numeric>(
      with padValue: Scalar, atStart: Bool = false
    ) -> Element
    where Element == Tensor<Scalar>

    पैरामीटर

    atStart

    यदि यह true है तो शुरुआत में पैडिंग जोड़ता है और अन्यथा अंत में। मूल मूल्य false है ।

,
extension Collection
extension Collection where Element: Collatable
  • पुन: व्यवस्थित किए गए तत्वों के साथ इस संग्रह का एक दृश्य लौटाता है, जैसे दिए गए स्थान पर तत्व पहले समाप्त होता है।

    i तक के संग्रह के बाद के क्रम को i से शुरू होने वाले बाद के क्रम में स्थानांतरित कर दिया जाता है। प्रत्येक विभाजन के भीतर तत्वों का क्रम अन्यथा अपरिवर्तित है।

    let a = [10, 20, 30, 40, 50, 60, 70]
    let r = a.rotated(shiftingToStart: 3)
    // r.elementsEqual([40, 50, 60, 70, 10, 20, 30])
    

    घोषणा

    func rotated(shiftingToStart i: Index) -> RotatedCollection<Self>

    पैरामीटर

    i

    संग्रह में वह स्थान जो परिणाम में प्रथम होना चाहिए। i संग्रह का एक वैध सूचकांक होना चाहिए।

    प्रतिलाभ की मात्रा

    इस संग्रह के तत्वों पर एक घुमाया हुआ दृश्य, जैसे कि i पर तत्व पहले है।

  • घोषणा

    func stablyPartitioned(
      isSuffixElement p: (Element) -> Bool
    ) -> [Element]
  • संग्रह में पहले तत्व का सूचकांक लौटाता है जो विधेय से मेल खाता है।

    संग्रह को पहले से ही विधेय के अनुसार विभाजित किया जाना चाहिए, जैसे कि self.partition(by: predicate) पहले ही बुलाया जा चुका हो।

    • दक्षता: अधिकांश लॉग (एन) में predicate का आह्वान, जहां एन self की लंबाई है। यदि self RandomAccessCollection के अनुरूप है, तो अधिकांश लॉग (एन) इंडेक्स ऑफसेटिंग ऑपरेशंस पर; अधिक से अधिक एन ऐसे ऑपरेशन अन्यथा।

    घोषणा

    func partitionPoint(
      where predicate: (Element) throws -> Bool
    ) rethrows -> Index
  • self.map(transform) लौटाता है, जिसकी गणना minBatchSize या minBatchSize + 1 आकार के self के टुकड़ों पर समानांतर में की जाती है।

    आवश्यक है

    transform एकाधिक थ्रेड से कॉल करना सुरक्षित है।

    घोषणा

    func concurrentMap<B>(
      minBatchSize: Int = 1,
      _ transform: (Element) -> B
    ) -> [B]
  • किसी भी संग्रह के तत्वों को पढ़े बिना selection द्वारा निर्दिष्ट स्थिति में और क्रम में self के तत्वों का संग्रह लौटाता है।

    जटिलता

    हे(1)

    घोषणा

    public func sampled<Selection: Collection>(at selection: Selection)
      -> Sampling<Self, Selection>
  • self के सबसे लंबे गैर-अतिव्यापी स्लाइस लौटाता है, जो इसके पहले तत्व से शुरू होता है, जिसमें batchSize की अधिकतम लंबाई होती है।

    घोषणा

    public func inBatches(of batchSize: Int) -> Slices<Self>
  • self में n वाँ स्थान लौटाता है।

    घोषणा

    func index(atOffset n: Int) -> Index
उपलब्ध है जहां `एलिमेंट`: `कोलैटेबल`
  • self के तत्वों को एकत्रित करने का परिणाम।

    घोषणा

    public var collated: Element { get }
  • self के तत्वों को वापस लौटाता है, padValue के साथ अधिकतम आकार में गद्देदार और मिलान किया जाता है।

    घोषणा

    public func paddedAndCollated<Scalar: Numeric>(
      with padValue: Scalar, atStart: Bool = false
    ) -> Element
    where Element == Tensor<Scalar>

    पैरामीटर

    atStart

    यदि यह true है तो शुरुआत में पैडिंग जोड़ता है और अन्यथा अंत में। मूल मूल्य false है ।