লিনাক্স কমান্ড লাইনের জন্য বড় ডেটা সেট?


0

সমস্যা: আমি ডেটার একটি বৃহত্তর এক্সেল ফাইল, এখানে 1000 টিরও বেশি কলাম এবং 40,000 সারি রয়েছে। আমাকে চিহ্নিত করতে হবে যে প্রদত্ত সারিতে কোনও প্রদত্ত কক্ষে> 199 এর মান রয়েছে। যদি কোনও প্রদত্ত কক্ষে কোনও সারিতে> 199 না থাকে তবে আমি সেই সারিগুলি মুছতে চাই। যাতে আমি কেবল সারি রেখে যাই যেখানে কমপক্ষে একটি ঘরের মান> 199 থাকে has

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

আপনার সাহায্যের জন্য ধন্যবাদ।

নীচে সেট ডেটা উদাহরণ চিত্র। এখানে আমি কেবলমাত্র সারিগুলি চাই যা সেলগুলি হাইলাইট করেছে (কারণ সেগুলি> 200) তবে আমি কেবল বিবরণীর চেয়ে বাছাই করা ফাংশন বা জটিল ব্যবহার করতে পারি না কারণ আমার ডেটা সেটে অনেকগুলি কলাম রয়েছে, তাই এটি খুব বেশি সময়সাপেক্ষ ...

এখানে চিত্র বর্ণনা লিখুন


আমি বুঝতে পারছি না। এটি কি এক্সেল সম্পর্কে একটি প্রশ্ন? আপনি কি এক্সেল থেকে কোনও পাঠ্য ফাইলে আপনার ডেটা রফতানি করেছেন? বিস্তারিত, দয়া করে। মন্তব্যে প্রতিক্রিয়া জানাতে দয়া করে;  আপনার প্রশ্নটি আরও পরিষ্কার এবং আরও সম্পূর্ণ করতে সম্পাদনা করুন।
স্কট

আন্না তার / তার বিষয়টি পরিষ্কার বর্ণনা করেছেন। তার / "টেক্সট ফাইলের মতো একই ডেটা ফাইল" রয়েছে এবং লিনাক্স কমান্ড লাইনে এই টিএসটি ফাইলটি কীভাবে পার্সিং করতে হবে এবং তার জন্য কোন সরঞ্জামগুলির সংমিশ্রণ করতে হবে সে সম্পর্কে পরামর্শ চাইতে চান। বিভিন্ন কমান্ডের সাহায্যে পাইপিং ব্যবহার করা উচিত বা অন্য কোনও পদ্ধতির ব্যবহার করা উচিত। আমিও এতে আগ্রহী। এই প্রশ্নের জন্য আপনাকে ধন্যবাদ।
শিরোনাম

1
@ টাইটাস: আমি এমন কাউকে প্রত্যাশা করব যিনি এই সাইটে আট বছর ধরে আছেন সম্পাদনা এবং পুনর্বিবেচনার ইতিহাস সম্পর্কে জানতে আপনি যদি সন্ধান করেন তবে আপনি দেখতে পাবেন যে আমি আমার মন্তব্য করার পরে "পাঠ্য ফাইলের মতো একই ডেটা ফাইল" বিবৃতি যুক্ত করা হয়েছিল।
স্কট

উত্তর:


0

যেহেতু আপনি বলেছেন "এই সমস্যাটি কীভাবে কাছে সাধারণ পরামর্শ খুঁজছেন?" এখানে একটি পদ্ধতির:

পাইথন কীভাবে ব্যবহার করতে হয় তা যদি আপনি জানেন তবে আপনি ফাইলটি কমা দ্বারা পৃথক করা ফাইল হিসাবে সংরক্ষণ করতে পারেন এবং কেবল একটি ছোট স্ক্রিপ্ট লিখে ফাইলটি csvচালিয়ে যেতে পারেন এবং তারপরে ডেটা দিয়ে কিছু করতে ব্যবহার করতে পারেন। অজগরকে সমর্থন করে এমন কোনও অপারেটিং সিস্টেম আপনি ব্যবহার করতে পারেন।


আমি কেবল অজগর শিখছি, তাই আমি এর আগে কোনও স্ক্রিপ্ট লিখিনি, কোন স্ক্রিপ্ট এটি করবে?
আনা

আপনি উদাহরণস্বরূপ, "xlrd" মডিউলটি ব্যবহার করতে পারেন, বিশেষত এর শীট.নরোজ এবং শীট.রো_ভ্যালু (এন) পদ্ধতিগুলি। এক্সআরআরডি ব্যবহারের জন্য একটি ছোট টিউটোরিয়ালটি geeforforgeeks.org/reading-excel-file-used-python
ক্রিস্টোফ সোমার

0

আমার খুব সাধারণ পরামর্শ নেই। বিশেষত, আমি আপনাকে এই awk কমান্ডটি ব্যবহার করার পরামর্শ দিচ্ছি:

awk '{
        over=0
        for (i=1; i<=NF; i++) if ($i > 199) over=1
        if (over) print
     }'

আমি আপনার ফাইল থেকে সংখ্যার উপর ভিত্তি করে একটি ছোট ডেটা ফাইল তৈরি করেছি এবং কয়েকটা আমি নিজেরাই তৈরি করেছি:

$ cat input
81      23      40
31      0       416     12
2       2       1
157     41      80      201
417     42      17

$ ./myscript input
31      0       416     12
157     41      80      201
417     42      17

করতে মুছতে আপনার ফাইল থেকে সারি, না

$ ./myscript input > input.new
$ mv input.new input

নোট:

  • আপনার নিজের প্রয়োজনে আপনার সিদ্ধান্তটি> 199,> 200, 200 ডলার, বা কোনটি তা স্থির করা উচিত।
  • আপনার যদি সারি 1 রাখতে হয় (অর্থাত লাইন 1, শিরোনাম সারি), তাই বলুন।
  • আমি এটি কোনও বড় ফাইলে পরীক্ষা করিনি।  awkবিশাল সংখ্যক সারি (লাইন) নিয়ে কোনও সমস্যা হওয়া উচিত নয়। এক হাজার কলাম (ক্ষেত্র) একটি সমস্যা হতে পারে, তবে আমি সন্দেহ করি।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.