質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

Q&A

解決済

1回答

6293閲覧

Python の Pandas で HTML 出力した時に改行したい。

退会済みユーザー

退会済みユーザー

総合スコア0

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

0グッド

1クリップ

投稿2019/05/16 14:46

前提・実現したいこと

Windows に Python 3.7.3 と Pandas をインストールしている環境で、
以下の CSV を読み込み、HTML でそのまま(改行されている状態)で出力させたいのですが、
スクリプトを実行した結果、改行の部分が以下のように\n\nとなります。

発生している問題・エラーメッセージ

■CSV[aaa.csv]の内容(理想のHTMLの出力)
あいうえお

かきくけこ

さしすせそ

■現在のHTML(aaa.html)の状況
あいうえお\n\nかきくけこ\n\nさしすせそ

該当のソースコード

pd.set_option('display.max_rows', 12000)
pd.set_option('display.width', 12000)
pd.set_option("display.max_colwidth", 12000)

df = pd.read_csv(r'C:\Python\aaa.csv', encoding='cp932', names=["項目", "内容"], usecols=[0, 1], skiprows=[0], skipfooter=0, engine='python')
df.to_html(r'C:\Python\aaa.html')

初歩的な質問で恐縮ですが、よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

magichan

2019/05/16 23:07

aaa.csv の実際の内容を提示していただけませんか
退会済みユーザー

退会済みユーザー

2019/05/17 01:09

ご連絡ありがとうございます。 実際のcsvは以下になります。 項目,内容 1,"あ い う え お"
guest

回答1

0

ベストアンサー

htmlをブラウザで見ているのか、それともテキストエディタで見ているのでしょうか。
ブラウザで見て改行されないとおっしゃってるのでしたら、brタグ(非推奨ですが)をお使いになれば良ろしいかと。
テキストエディタで見ている場合は、改行コード(CRとかLFとか)はお使いの環境に沿ったものでしょうか。

投稿2019/05/16 15:32

jeanbiego

総合スコア3966

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/05/16 15:46

ご回答ありがとうございます。 言葉たらずで申し訳ありません。 ブラウザ(chrome)でみています。 brタグはどのように使えばよろしいでしょうか。
退会済みユーザー

退会済みユーザー

2019/05/17 01:14

<br>タグについてご教示頂き誠にありがとうございます。 replaceというコマンドがあったので、以下を試してみました。 df= df.replace({'\n': '<br>'}, regex=True) ※\n部分を<br>に変更することで改行できるのかなと思いました。 しかし以下のようなhtmlの結果となりました。 あ<br><br>い<br><br>う<br><br>え<br><br>お htmlをメモ帳で開くと以下のとおりとなっていました。 <td>あ&lt;br&gt;&lt;br&gt;い&lt;br&gt;&lt;br&gt;う&lt;br&gt;&lt;br&gt;え&lt;br&gt;&lt;br&gt;お</td> 出力結果のhtmlに<br>を直接記載するしか方法はないでしょうか。
jeanbiego

2019/05/17 01:31

to_htmlの機能で、ブラウザで表示するときに変換される文字を置換しているようです。 引数に,escape=Falseを追加してみてはいかがでしょうか。 df.to_html(r'C:\Python\aaa.html' ,escape=False) それか、生成したhtmlの中身をreplaceして &lt; を < にするのも、対処療法的ですがありかもしれません。 参考: ”escape : bool, default True Convert the characters <, >, and & to HTML-safe sequences.” https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.to_html.html
退会済みユーザー

退会済みユーザー

2019/05/17 03:22

ありがとうございます! escape=Falseで解決しました。 とても勉強になりました。本当に感謝です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問