Cette question a peut-être été posée par quelqu'un d'autre, mais comme je n'ai pas pu trouver de solution à ma question, j'écris ici, j'espère que quelqu'un pourra m'aider.
J'ai un fichier texte dans celui-ci, toutes les données de colonne ont été en dessous les unes des autres, comment diviser ces données et créer une table.
SlNo
1
2
3
4
Nom d'étudiant
UNE
B
C
ré
Classe
Première
Seconde
Troisième
Quatrième
Matière
Anglais
Mathématiques
Science
La physique
Notes obtenues
50
65
55
70
Pourcentage
dix%
20%
30%
40%
Ci-dessus se trouvent les exemples de données sur une seule colonne (comme l'une en dessous de l'autre) et dans un fichier texte.
Mon code comme suit mais je n'obtiens rien
import pandas as pd
def parse_my_file(filename):
With open ('sample.txt')as f:
for line in f:
yield line.strip(). split (' ',1)
df=pd.DataFrame(parse_my_file('sample.txt'))
Merci
Essaye ça:
import numpy as np
import pandas as pd
x = np.loadtxt('test1.txt',delimiter = '\n\n', dtype=str)
reshaped = x.reshape(-1,5).T
df = pd.DataFrame(data = reshaped[1:,:], columns = reshaped[0])
print(df)
OU
def parseFile(filename, vals_per_col):
with open('test1.txt','r') as f:
lines = [line.strip() for line in f if line.strip()]
return {lines[i]:lines[i+1 : i+5] for i in range(0,len(lines),vals_per_col+1)}
df = pd.DataFrame(parseFile('sample.txt',4))
print(df)
Production:
SlNo Student Name Grade Subject Marks Obtained Percentage
0 1 A First English 50 10%
1 2 B Second Mathematics 65 20%
2 3 C Third Science 55 30%
3 4 D Fourth Physics 70 40%
Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.
En cas d'infraction, veuillez [email protected] Supprimer.
laisse moi dire quelques mots