Warum funktioniert meine Spalte nicht richtig?
Posted: 21 Feb 2025, 23:45
Warum ist mein Python3 -Code auf Spalte 4 an den Basen von "", zu der Spalte 7, 8, 9 mit Bedingung, wenn der Wert der Spalte 5 "Lub" nicht funktioniert? < /p>
< P> Quelldaten:
< /p>
Ausgabedaten:
Ich kann es nicht auf teilen "0,5, Z20/1; 120" in Spalte 7, 8, 9
Was soll ich tun für das gewünschte Ergebnis?
< P> Quelldaten:
< /p>
Code: Select all
20240801 CASH MAN1 120.00 Z20/1 0.5 , Z20/1 ; 120 1 LUB
20240801 PAYTM 15720.00 CASH MAN1 0 1 JRNLCR
20240801 PAYTM 81343.00 CASH MAN2 0 2 JRNLCR
< /code>
Mein Code: < /p>
import numpy as np
import pandas as pd
var001_sf = input("Enter file name to import : ")
var002_sf = var001_sf + ".csv"
var002_ar1 = pd.read_csv(var002_sf, sep='\t', header=None)
var002_ar1 = var002_ar1.dropna(axis=0) # remove rows with na value
var002_ar1.iloc[:, [0, 1, 2, 3, 4, 5, 6]] = var002_ar1.iloc[:, [0, 1, 2, 3, 4, 5, 6]].map(str)
var002_ar1.loc[var002_ar1.iloc[:, 6] == 'LUB', [7, 8, 9]] = var002_ar1.iloc[:, 4].str.split(', ', n=2, expand=True)
var002_ar1.to_csv("t250221.csv", sep='\t')
Code: Select all
20240801 CASH MAN1 120.0 Z20/1 0.5 , Z20/1 ; 120 1 LUB
1 20240801 PAYTM 15720.0 CASH MAN1 0 1 JRNLCR
2 20240801 PAYTM 81343.0 CASH MAN2 0 2 JRNLCR
Was soll ich tun für das gewünschte Ergebnis?