首页 > 解决方案 > 如何使用 DataFrame 限制列中字符串(字符/单词)的数量

问题描述

试图限制 DataFrame 输出中显示的字符数。

下面是一个 DataFrame 的例子:

     Abc                       XYZ
0  Hello   How are you doing today
1   Good   This is a job well done
2    Bye          See you tomorrow
3  Books  Read chapter 1 to 5 only

期望的输出:

     Abc                       XYZ
0  Hello                   How are 
1   Good                   This is
2    Bye                   See you
3  Books              Read chapter

这是我尝试过的:

pd.set_option('display.max_info_rows', 2)
pd.set_option('display.max_info_columns', 2)
pd.set_option('display.max_colwidth', 2)

max_info_rowsmax_info_columns没有做任何事情,而max_colwidth实际上进一步扩展了字符。

无论如何限制数据框中的字符数?

谢谢!

标签: pythonpandasdataframe

解决方案


尝试这个:

df.XYZ.apply(lambda x : x.rsplit(maxsplit=len(x.split())-2)[0])

0         How are
1         This is
2         See you
3    Read chapter

只需重新分配它:

df.XYZ = df.XYZ.apply(lambda x : x.rsplit(maxsplit=len(x.split())-2)[0])
print(df)

     Abc           XYZ
0  Hello       How are
1   Good       This is
2    Bye       See you
3  Books  Read chapter

推荐阅读