পান্ডারা শিরোনাম ছাড়াই টেবিলে পড়েন


238

আমি কীভাবে একটি .csv ফাইলে (কোনও শিরোনামহীন) ফাইল পড়তে পারি এবং যখন আমি কেবল কলামগুলির একটি উপসেট চাই (মোট 20 টি কলামের মধ্যে চতুর্থ এবং 7 তম বলি), পান্ডা ব্যবহার করে? আমি করতে সক্ষম হতে পারে বলে মনে হচ্ছে নাusecols

উত্তর:


349

কোনও সিএসভি পড়ার জন্য এতে শিরোনাম নেই এবং কেবলমাত্র নির্দিষ্ট কলামগুলির জন্য আপনাকে প্যারামগুলি পাস করতে হবে header=Noneএবং usecols=[3,6]চতুর্থ এবং 7 তম কলামের জন্য:

df = pd.read_csv(file_path, header=None, usecols=[3,6])

দস্তাবেজগুলি দেখুন


67

পূর্ববর্তী উত্তরগুলি ভাল এবং সঠিক ছিল, তবে আমার মতে, একটি অতিরিক্ত namesপরামিতি এটিকে নিখুঁত করে তুলবে, এবং এটি প্রস্তাবিত উপায় হওয়া উচিত, বিশেষত যখন সিএসভির কোনও নেই headers

সমাধান

ব্যবহার usecolsএবং namesপরামিতি

df = pd.read_csv(file_path, usecols=[3,6], names=['colA', 'colB'])

অতিরিক্ত পড়া

বা header=Noneস্পষ্টভাবে লোকদের বলার জন্য ব্যবহারের যে csvকোনও শিরোনাম নেই (যাইহোক উভয় লাইনই অভিন্ন )

df = pd.read_csv(file_path, usecols=[3,6], names=['colA', 'colB'], header=None)

যাতে আপনি নিজের ডেটা পুনরুদ্ধার করতে পারেন

# with `names` parameter
df['colA']
df['colB'] 

পরিবর্তে

# without `names` parameter
df[0]
df[1]

ব্যাখ্যা করা

রিড_সিএসভি এর উপর ভিত্তি করে , যখন namesস্পষ্টভাবে পাস করা headerহবে , তখন তার Noneপরিবর্তে তার মতো আচরণ করা হবে 0, সুতরাং উপস্থিত থাকা header=Noneঅবস্থায় কেউ এড়িয়ে যেতে namesপারে।


9

নিশ্চিত করুন যে আপনি পাসটি নির্দিষ্ট করেছেন header=Noneএবং usecols=[3,6]চতুর্থ এবং 7 তম কলামের জন্য যুক্ত করেছেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.