この記事では主に、Python で csv ファイルを読み取り、列を削除して新しいファイルを書き込む例を紹介します。これは非常に参考になるので、皆さんのお役に立てれば幸いです。エディターをフォローして見てみましょう。これが皆さんの Python の習得に役立つことを願っています
私はこの問題を解決するために 2 つの方法を使用しました。どちらもインターネット上に存在する解決策です。
シナリオの説明:
テキスト モードで保存されたデータ ファイルには、user_id、plan_id、mobile_id の 3 つの列があります。目標は、mobile_id、plan_id のみを使用して新しいファイルを取得することです。
解決策
オプション1:Pythonを使用してファイルを開いて書き込み、データを直接読み取り、forループでデータを処理して、新しいファイルに書き込みます。
コードは次のとおりです:
def readwrite1( input_file,output_file): f = open(input_file, 'r') out = open(output_file,'w') print (f) for line in f.readlines(): a = line.split(",") x=a[0] + "," + a[1]+"\n" out.writelines(x) f.close() out.close()
オプション2:パンダを使用してデータをDataFrameに読み取り、データを分割し、DataFrameの書き込み関数を直接使用して書き込みます。新しいファイル
コードは次のとおりです:
def readwrite2(input_file,output_file): date_1=pd.read_csv(input_file,header=0,sep=',') date_1[['mobile', 'plan_id']].to_csv(output_file, sep=',', header=True,index=False)
コードの観点から見ると、pandas のロジックがより明確になります。
実行効率を見てみましょう!
def getRunTimes( fun ,input_file,output_file): begin_time=int(round(time.time() * 1000)) fun(input_file,output_file) end_time=int(round(time.time() * 1000)) print("读写运行时间:",(end_time-begin_time),"ms") getRunTimes(readwrite1,input_file,output_file) #直接撸数据 getRunTimes(readwrite2,input_file,output_file1) #使用dataframe读写数据
読み取りと書き込みの実行時間: 976 ms
読み取りと書き込みの実行時間: 777 ms
input_file のデータ量は、for ループの場合よりもまだ高速です。データが大きいほど、効果はより顕著になりますか?
次に、input_file レコードの数を増やしてみます。結果は次のようになります。
input_file | 読み取り書き込み1 | 読み取り書き込み2 |
27W | 976 | 777 |
55W | 1989 | 1509 |
110W | 4312 | 3158 |
上記のテスト結果より、データフレームの効率が向上しています約30%ほど増加します。
関連する推奨事項:
詳しい例とともに Python を使用してディレクトリ内のファイルをフィルタリングおよび削除する
以上がPython が CSV ファイルを読み取り、列を削除し、新しいファイルを書き込む技術チュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

inpython、youappendelementStoalistusingtheappend()method.1)useappend()forsingleelements:my_list.append(4).2)useextend()or = formultipleElements:my_list.extend(another_list)ormy_list = [4,5,6] .3)forspecificpositions:my_list.insert(1,5).beaware

シェバンの問題をデバッグする方法には次のものがあります。1。シバン行をチェックして、それがスクリプトの最初の行であり、接頭辞スペースがないことを確認します。 2.通訳パスが正しいかどうかを確認します。 3.通訳を直接呼び出してスクリプトを実行して、シェバンの問題を分離します。 4. StraceまたはTrustsを使用して、システムコールを追跡します。 5.シバンに対する環境変数の影響を確認してください。

pythonlistscanbemanipulatedsingseveralmethodstoremoveElements:1)theremove()methodremovesthefirstoccurrenceofaspecifiedValue.2)thepop()methop()methodremovessanelementatagivenindex.3)thedelstatementementementementementementementementementemoritemoricedex.4)

Integers、strings、floats、booleans、otherlists、anddictionaryを含むpythonlistscanstoreanydatype

PythonListsSupportNumersoperations:1)AddingElementSwithAppend()、Extend()、Andinert()

Numpyを使用して多次元配列を作成すると、次の手順を通じて実現できます。1)numpy.array()関数を使用して、np.array([[1,2,3]、[4,5,6]])などの配列を作成して2D配列を作成します。 2)np.zeros()、np.ones()、np.random.random()およびその他の関数を使用して、特定の値で満たされた配列を作成します。 3)アレイの形状とサイズの特性を理解して、サブアレイの長さが一貫していることを確認し、エラーを回避します。 4)np.reshape()関数を使用して、配列の形状を変更します。 5)コードが明確で効率的であることを確認するために、メモリの使用に注意してください。

BroadcastinginNumPyisamethodtoperformoperationsonarraysofdifferentshapesbyautomaticallyaligningthem.Itsimplifiescode,enhancesreadability,andboostsperformance.Here'showitworks:1)Smallerarraysarepaddedwithonestomatchdimensions.2)Compatibledimensionsare

Forpythondatastorage、chooseLists forfficability withmixeddatypes、array.arrayformemory-efficienthogeneousnumericaldata、およびnumpyArrays foradvancednumericalcomputing.listSareversatilebuteficient efficient forlargeNumericaldatates;


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

ホットトピック









