Pandas: показывать целые строки без усечения

#python #pandas #amazon-sns

#python #pandas #amazon-sns

Вопрос:

У меня есть скрипт на python, который отправляет электронное письмо при сбое с использованием AWS SNS. У меня возникла проблема, из-за которой фрейм данных усекается, и я не уверен, как показать весь поток. Я пытался использовать pandas set_option , но это, похоже, не имеет никакого эффекта.

Есть ли способ распечатать весь фрейм данных и показать всю строку?

Вот небольшой фрагмент кода:

 import pandas as pd
import boto3
pd.set_option('display.max_columns', None)
pd.set_option('display.max_rows', None)

session = boto3.Session()
sns = session.client('sns', region_name='us-east-1')

d = {'failed_runs':['296e62fb-1bc2-4e27-8d69-4a2267237698 - FAILED-GSN-INTO', '92b15078-1fcc-41f0-bc20-d933becf23bf - FAILED-ESP2-INTO', 'b04460ef-32a7-403a-8fbe-468effed7f2b - FAILED-HLN-INTO']}

df = pd.DataFrame(d)

response = sns.publish(TopicArn="arn:aws:sns:xxxxxxxxx",
                       Message="""
        Daily Digest for Failed Runs
        ------------------------------------------------------------------------------------

        {}

        ------------------------------------------------------------------------------------


        """.format(df))
  

Это дает мне электронное письмо типа:

        Daily Digest for Failed Runs
       ------------------------------------------------------------------------------------

                                                  failed_runs
0   296e62fb-1bc2-4e27-8d69-4a2267237698 - FAILED-...
1   92b15078-1fcc-41f0-bc20-d933becf23bf - FAILED-...
2   b04460ef-32a7-403a-8fbe-468effed7f2b - FAILED-...
  

Ответ №1:

Вы можете попробовать напечатать df в вывод вместо использования {}.format(df)

 print(df.to_string())
  

Ответ №2:

это работает для меня:

 #unlimited width - None
In [41]: pd.set_option('max_colwidth', None)

In [42]: df
Out[42]:
                                               failed_runs
0   296e62fb-1bc2-4e27-8d69-4a2267237698 - FAILED-GSN-INTO
1  92b15078-1fcc-41f0-bc20-d933becf23bf - FAILED-ESP2-INTO
2   b04460ef-32a7-403a-8fbe-468effed7f2b - FAILED-HLN-INTO

#reset to default width
In [43]: pd.reset_option('max_colwidth')

In [44]: df
Out[44]:
                                         failed_runs
0  296e62fb-1bc2-4e27-8d69-4a2267237698 - FAILED-...
1  92b15078-1fcc-41f0-bc20-d933becf23bf - FAILED-...
2  b04460ef-32a7-403a-8fbe-468effed7f2b - FAILED-...