Memutakhirkan fungsi buatan pengguna untuk melakukan pengurangan
Fungsi yang Anda kerjakan pada latihan sebelumnya tidak dapat melakukan pengurangan. Perhatikan fungsi berikut:
def compute_ratio(df, numerator, denominator, ratio_name,
addition_in_numerator = True,
addition_in_denominator = True):
numerator_of_ratio = np.where(addition_in_numerator,
df[numerator].sum(axis=1),
df[numerator[0]] - df[numerator[1:]].sum(
axis=1))
denominator_of_ratio = np.where(addition_in_denominator,
df[denominator].sum(axis=1),
df[denominator[0]] - df[denominator[1:]].sum(axis=1))
df[ratio_name] = numerator_of_ratio/denominator_of_ratio
return df
Fungsi ini dapat menangani penjumlahan dan pengurangan pada pembilang dan penyebut rasio keuangan. Perhatikan bahwa fungsi ini menggunakan np.where. Ini adalah fungsi dari paket NumPy. np.where memeriksa apakah argumen pertama bernilai True; jika ya, ia mengembalikan argumen kedua, jika tidak, ia mengembalikan argumen ketiga. Misalnya, pada kode di atas, kita memiliki:
np.where(addition_in_numerator,
df[numerator].sum(axis=1),
df[numerator[0]] - df[numerator[1:]].sum(
axis=1))
Jika addition_in_numerator bernilai true, np.where akan mengembalikan df[numerator].sum(axis=1), jika tidak maka akan mengembalikan df[numerator[0]] - df[numerator[1:]].sum(axis=1).
Dalam latihan ini, DataFrame balance_sheet, beserta pandas dan NumPy masing-masing sebagai pd dan np, telah dimuat untuk Anda. Gunakan ini untuk menentukan pernyataan mana berikut yang benar.
Latihan ini adalah bagian dari kursus
Menganalisis Laporan Keuangan dengan Python
Latihan interaktif praktis
Ubah teori menjadi tindakan dengan salah satu latihan interaktif kami.
Mulai berolahraga