Chức năng cột trong python là gì?

Các hàm Python có thể được xác định và truy cập trong hộp thoại Đặt giá trị cho cả Trang tính và Bảng ma trận. Hàm Python phải được xác định trong tab Hàm Python. Sau đó, hàm có thể được gọi từ hộp chỉnh sửa công thức hoặc từ tab Before Formula Scripts

Nếu hàm Python của bạn yêu cầu các gói khác, thì chúng cần được cài đặt trước khi xác định và truy cập hàm từ hộp thoại Đặt giá trị

Với công thức cột, hàm nên được xác định để trả về danh sách số float hoặc chuỗi để có hiệu suất tối ưu. Nếu hàm được xác định để trả về một float hoặc một chuỗi, thì hàm sẽ được gọi cho mỗi hàng liên quan đến phép tính

ví dụ 1

Trong ví dụ này, một hàm Python được sử dụng trong công thức cột của cột C để làm mịn dữ liệu nhiễu từ cột B. Hàm được định nghĩa là

import numpy as np
from scipy import signal

def smooth(y, npts, norder):
    """
    F:Fii
    """
    y=signal.savgol_filter(np.array(y), npts, norder)
    return y

Hàm này chấp nhận một danh sách các số float và hai số nguyên xác định cửa sổ làm mịn và thứ tự đa thức, đồng thời trả về một danh sách các số float. Các loại đầu vào và đầu ra được chỉ định bằng chuỗi tài liệu là F. fii. Ở đây giả định rằng các gói NumPy và SciPy đã được cài đặt

Để truy cập hàm từ hộp chỉnh sửa công thức, tên hàm cần được thêm py vào trước

py.smooth(B, 51, 2)

Hình ảnh bên dưới hiển thị trang tính có dữ liệu thô và kết quả cũng như hộp thoại Đặt giá trị với tab Hàm Python.

Chức năng cột trong python là gì?

ví dụ 2

Trong ví dụ này, một hàm Python được sử dụng để thực hiện thống kê nhóm trên các cột dữ liệu. Hàm chấp nhận ba cột dữ liệu và trả về ba cột có kết quả. Do đó, hàm không thể được gọi trực tiếp từ hộp Công thức. Thay vào đó, tab Before Formula Scripts được sử dụng để gọi hàm

Hàm được định nghĩa là

import pandas as pd

def groupstats(ID, x, y):
    if len(ID) == len(x) and len(ID)==len(y):
        df = pd.DataFrame({'ID':ID,'x':x,'y':y})
        df1 = df.groupby('ID').mean()  
        return df1.index, df1.x, df1.y
    else:
        return [], [], []

Lưu ý rằng các loại đầu vào và đầu ra không được xác định rõ ràng trong chức năng này. Ba cột đầu vào được chuyển đến hàm được chuyển đổi thành danh sách. Việc tính toán được thực hiện bằng khung dữ liệu và hàm trả về ba danh sách. Các giá trị được trả về được đặt trong ba cột đầu ra bằng cách sử dụng lệnh script trong tab Before Formula Scripts

col(D), col(E), col(F) = py.groupstats(col(A), col(B), col(C))

Chức năng cột trong python là gì?

ví dụ 3

Trong hai ví dụ trước, hàm Python đã được xác định trong hộp thoại Đặt giá trị. Sau đó, trang tính có thể được lưu dưới dạng mẫu cùng với hàm Python và sau đó có thể mở phiên bản mới của mẫu để sử dụng trong tương lai

Các hàm Python cũng có thể được xác định trong các tệp bên ngoài và sau đó được truy cập trong công thức cột hoặc ô. Trong ví dụ sau, một hàm được định nghĩa trong tệp labTalk. py được gọi là. Thông tin chi tiết hơn về cách xác định chức năng trong các tệp bên ngoài có sẵn trong các phần tiếp theo


Chức năng cột trong python là gì?

Chức năng cột trong python là gì?
  • Bạn có thể lưu công thức cột, cùng với Before Formula Scripts và mã Python Formula bằng cách (1) nhấp vào Công thức. Lưu dưới dạng trên thanh menu Đặt giá trị, (2) bằng cách nhấp vào nút Lưu công thức trong Đặt giá trị hoặc (3) bằng cách nhấp chuột phải vào hàng nhãn cột F(x)= ô và chọn Lưu dưới dạng. Sau đó, bạn có thể tải công thức từ menu Gốc. Cột. Điền vào Công thức người dùng và chọn công thức đã lưu của bạn từ menu bay ra
  • Nếu ô F(x)= của trang tính bắt đầu "py. " và gọi một hàm Python được xác định trong một tệp bên ngoài, bạn có thể nhấp chuột phải vào ô F(x)= và chọn Mở tệp Python để mở hàm Python trong IDE Trình tạo mã

Gọi các hàm Python từ các tệp bên ngoài

Các hàm Python có thể được định nghĩa ở bên ngoài. tập tin py. Theo mặc định, Origin sẽ tìm hàm trong tệp có tên labtalk. py nằm trong Thư mục tệp người dùng (UFF) của bạn. Bạn có thể mở tệp này từ menu Gốc Kết nối. Mở các hàm Python mặc định

Các hàm được định nghĩa trong labtalk. tệp py có thể được gọi từ tập lệnh LabTalk bằng cú pháp như

col(B)=py.f1(col(A));

trong đó f1 là tên hàm

Chức năng cột trong python là gì?

Các ví dụ tập tin. py có một số ví dụ về việc xác định các hàm Python. Bạn có thể mở tệp này từ menu Gốc Kết nối. mở ví dụ. py. Sao chép chức năng mong muốn từ tệp này vào labtalk. py

Nếu bạn xác định chức năng trong khác. py, bạn có thể truy cập chúng bằng cú pháp như

col(b) = py.myfuncs.sort(col(a))

trong đó hàm sort() được định nghĩa trong tệp có tên myfuncs. py

Nguồn gốc sẽ tìm kiếm. py trong Thư mục tệp người dùng (UFF) theo mặc định. Có thể đặt một thư mục làm việc khác bằng cách sử dụng thuộc tính đối tượng Python. con trăn. Ltwd$

Có thể bỏ qua tên tệp khi gọi hàm bằng cách đặt thuộc tính đối tượng Python. con trăn. LTwf$

Python.LTwd$="D:\Python";
Python.LTwf$=MyFunctions.py;
col(B)=py.sort(col(A));   // call function sort from file MyFunctions.py located in D:\Python folder

Các thuộc tính đối tượng được sử dụng ở trên trống và không được đặt theo mặc định. Vị trí tệp python mặc định được đặt bên trong thư mục UFF và tên tệp mặc định được đặt bên trong labtalk. py Khi bạn gán một giá trị cho một trong hai thuộc tính này, giá trị đó sẽ được lưu trong tệp Gốc. ini nằm trong UFF

Chỉ định loại đầu vào và đầu ra

Các hàm Python có thể được định nghĩa với các loại đối số đầu vào và đầu ra cụ thể. Có hai cách để xác định loại

  • Sử dụng chú thích chức năng
  • Sử dụng Docstrings

Dưới đây là một số ví dụ

# Examples where function annotation is used to specify type
def a1(a, k:int):
    return a + k
    
def a2(a, b)->int:
    return a + b
    
def ss1(a:str, b:str)->str:
    """using function annotations"""
    c = a + b
    return c

def ss3(a:list)->list:
    return [len(x) for x in a]

def ss2(a:list, b:list)->list:
    c = [ x + y for x,y in zip(a, b)]
    return c

# Examples where docstring is used to specify type
def s2(a,b):
    """
    S:SS
    concatenate strings, array version
    """
    c = [ x + y for x,y in zip(a, b)]
    return c    

def s1(a, b):
    """
    s:ss
    concatenate strings, scaler version
    """
    c = a + b
    return c

def s3(a):
    """
    F:S
    intput string list and return float list
    """
    return [len(x) for x in a]

    
def sin(a):
    """
    F:F
    return sine
    """
    return np.sin(np.asarray(a))

Hàm này chấp nhận một danh sách float và hai số nguyên làm đầu vào và trả về một danh sách float. Nó cũng sử dụng các gói NumPy và SciPy

________số 8

Tuy nhiên, việc hàm có thể được truy cập từ công thức cột hay không sẽ phụ thuộc vào cách hàm được xác định

Nếu nó được định nghĩa là một hàm vô hướng và sẽ được gọi cho mỗi hàng, loại đầu vào/đầu ra cần được chỉ định, chẳng hạn như

def a1(a:float, b:int = 10)->float:
    return a+b

Nếu nó được định nghĩa là một hàm vectơ, thì không cần chỉ định loại đầu vào/đầu ra, chẳng hạn như

py.smooth(B, 51, 2)
0

Ở đây, loại đầu vào/đầu ra được coi là danh sách

Dù bằng cách nào, hàm này có thể được sử dụng trong công thức cột hoặc từ tập lệnh như trong col(B)=py. a1(col(A))

Trả về nhiều giá trị hoặc mảng

Nhiều giá trị hoặc danh sách có thể được trả về LabTalk từ các hàm Python

Hàm này chấp nhận một danh sách và hai số float làm đầu vào và trả về hai danh sách

py.smooth(B, 51, 2)
1

Trong một bảng tính mới, điền vào col(A) với một số số. Sau đó, từ tập lệnh, bạn có thể truy cập chức năng như

py.smooth(B, 51, 2)
2


Ví dụ trả về Tuple

Bạn có thể thêm phần sau vào tệp labtalk. py trong Thư mục tệp người dùng của bạn, sau đó lưu tệp

py.smooth(B, 51, 2)
3

Để chạy ví dụ, hãy làm như sau

  1. Từ menu chính, chọn Cửa sổ. Cửa sổ tập lệnh
  2. Sau đó, mở một sổ làm việc mới, sao chép phần sau vào Cửa sổ tập lệnh, chọn toàn bộ tập lệnh và nhấn Enter
py.smooth(B, 51, 2)
4

Hàm trả về một bộ có hai danh sách -- một tới col(A) và một tới col(B) -- và một số vô hướng được ghi vào biến LabTalk,

py.smooth(B, 51, 2)
7

Gọi các chức năng từ tệp đính kèm với dự án

Các hàm Python cũng có thể được định nghĩa trong. py được đính kèm với dự án Origin (OPJU). Các chức năng trong các tệp đính kèm có thể được truy cập bằng ký hiệu, chẳng hạn như

py.smooth(B, 51, 2)
5

Ký tự @ phía trước tên tệp cho biết Origin rằng tệp được đính kèm vào dự án

Nếu chỉ có một. py được đính kèm với dự án, được khuyến nghị, thì tên tệp có thể bị xóa khi truy cập chức năng, chẳng hạn như

Cột có phải là một bộ không?

Bộ dữ liệu là loại dữ liệu cho phép lưu trữ hai hoặc nhiều giá trị cùng nhau trong một cột . Có thể sử dụng loại do người dùng xác định, nhưng đối với các nhóm đơn giản, bộ dữ liệu là một lựa chọn tốt.

Cách xác định cột trong gấu trúc?

Để đặt tên cột của DataFrame trong Pandas, hãy sử dụng pandas. Khung dữ liệu. thuộc tính cột . Gán các tên cột bắt buộc dưới dạng danh sách cho thuộc tính này.

Các kiểu dữ liệu cột trong python là gì?

Kiểu dữ liệu của từng cột Dataframe
tên đối tượng
Tuổi int64
đối tượng TP.
Đánh dấu float64
gõ. sự vật