如何用逗号分割numpy数组值

时间:2018-10-20 02:53:53

标签: python-3.x pandas

我已经用熊猫数据框制作了一张桌子。我想在每一列上绘制黑白线条,因为我必须在Microsoft Office或Latex上复制此数据,并且必须以表格形式显示它。我怎样才能做到这一点?

`x= [0,1,2,3,4]
y=[10,20,30,40,50]
z= [100,200,300,400,500]
dict = {"col_1": x, "col_2":y, "col_3":z}
print(pandas.DataFrame(data=dict))`

3 个答案:

答案 0 :(得分:2)

如果您的目标是将此表复制到MS Office,则可以尝试以下两种操作:

1)将dataFrame写入csv文件,然后在MS Office中打开csv文件。

df=pandas.DataFrame(data=dict)
df.to_csv("my_df.csv")

2)如果您确实希望在列之间使用线条,也可以将其写入html文件并打开。

df.to_html("my_df.html")

enter image description here

答案 1 :(得分:0)

考虑使用以下代码,然后可以在MS Excel中打开df.xlsx。

x = [0,1,2,3,4]   
y = [10,20,30,40,50]
z = [100,200,300,400,500]
_dict = {"col_1": x, "col_2":y, "col_3":z}

将数据帧保存到xlsx:

df = pd.DataFrame(data=_dict)  
df.to_excel('df.xlsx')

答案 2 :(得分:0)

要将表格复制到 Excel(等)中而无需保存和加载等中间步骤,只需使用 pandas to_clipboard() 方法:

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.to_clipboard.html

或者应用 OP 的例子:

import pandas as pd

x = [0,1,2,3,4]
y = [10,20,30,40,50]
z = [100,200,300,400,500]
dict = {"col_1": x, "col_2":y, "col_3":z}
df = pandas.DataFrame(data=dict)
df.to_clipboard()

在此之后,应该可以直接粘贴到电子表格或其他相关软件中。

OP 的原始问题还要求提供在 LaTeX 中使用的选项。这可以通过以下类似的方式实现:

print(df.to_latex(index=False))

这不会自动出现在剪贴板中,但会打印:

\begin{tabular}{lrrr}
\toprule
{} &  col\_1 &  col\_2 &  col\_3 \\
\midrule
0 &      0 &     10 &    100 \\
1 &      1 &     20 &    200 \\
2 &      2 &     30 &    300 \\
3 &      3 &     40 &    400 \\
4 &      4 &     50 &    500 \\
\bottomrule
\end{tabular}

请注意,如果您使用 Jupyter 之类的东西默认打印返回值,那么如果没有 printto_latex() 的输出进行 print 处理,那么输出中会有额外的反斜杠,因此 $result= Message::with('users') ->select(DB::raw('id,from_user,to_user,created_at, max(created_at) as createdAt')) ->where('to_user',$user) ->orderBy('createdAt', 'desc') ->groupBy('from_user') ->selectRaw('count(messages.from_user) as total_msg') ->get(); 是必要的.