इस पोस्ट में मैंने पूछा है कि किसी संख्या को अनुक्रमणिका के रूप में उपयोग करके निर्देशिका में फ़ाइलों का चयन कैसे करें। अब मैं मैन्युअल रूप से नाम जोड़े बिना इस फ़ाइल को स्वचालित तरीके से सहेजना चाहता हूं। उदाहरण के लिए:

मेरे पास कोड द्वारा उत्पन्न निम्न सूची है (जैसा कि एरिक एम द्वारा सुझाया गया है):

files = [f for f in glob.glob("*.txt")]

for fi, f in enumerate(files):
    print(fi, f)

query = input("Please add your selection: ") # just the number
df = pd.read_csv(files[int(query)])

आउटपुट:

1     text1.txt
2     text2.txt
3     text3.txt
...

डेटाफ़्रेम में कुछ बदलावों के बाद, मैं नई तालिका को एक नई फ़ाइल में सहेजना चाहूंगा, उदा।

text1_test.txt

या

text2_test.txt

हालांकि, ऐसा करने के लिए मुझे ऊपर दिए गए कोड में चुने गए नंबर के बारे में जानकारी वापस प्राप्त करने की आवश्यकता होगी, यानी query

ऐसा कैसे किया जा सकता था?

0
still_learning 24 अप्रैल 2020, 21:55

1 उत्तर

सबसे बढ़िया उत्तर

यह एक समाधान कई हो सकता है। जब आप डेटाफ़्रेम पढ़ते हैं, तो फ़ाइल के नाम को अनुक्रमणिका के नाम के रूप में सहेजें और बाद में query उपलब्ध न होने की स्थिति में आप इस चर का उपयोग कर सकते हैं:

df = pd.read_csv(files[int(query)])
df.index.name = files[int(query)]

# Do other stuff

csv_name = df.index.name.split('.')[0] + '_test.txt'
df.to_csv(csv_name)
1
jcaliz 24 अप्रैल 2020, 22:07