小编Eri*_*ula的帖子

定义一个方法`sum_to_n?`

我有下面的代码.Method sum_to_n?将一个arr整数数组和一个整数n作为参数,并返回true任何两个元素的arr总和n.它应该返回truenull arr为零n,但保持返回false.

def sum_to_n?(arr, n)
  hash = Hash.new(0)
  arr.each do |val|
    if hash.key? val
      return true
    else
      hash[n-val] = val
    end
  end
  return false
end
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

ruby arrays

3
推荐指数
1
解决办法
2174
查看次数

Pandas:将 JSON 转换为 Pandas 数据帧

专家,

我在将 Json 解析为 Pandas 然后将其保存为 CSV 格式时遇到问题。

data2 = {"date":"2018-01-02","data":{"AAPL":{"open":"170.16","close":"172.26","high":"172.30","low":"169.26","volume":"25555934"},"MSFT":{"open":"86.13","close":"85.95","high":"86.31","low":"85.50","volume":"22483797"}}}
Run Code Online (Sandbox Code Playgroud)

如果我尝试:

df = pd.DataFrame.from_dict(json_normalize(data2), orient='columns')
print(df)
Run Code Online (Sandbox Code Playgroud)

一切都打印在一行中:

在此处输入图片说明

如果我做 :

jdata = json.loads(data2)
df = pd.DataFrame(jdata)
print(df.T)
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:TypeError:JSON 对象必须是 str、bytes 或 bytearray,而不是 'dict'

我希望以下表格式打印它,以便我可以将其另存为 csv :

Date        Data    Open    Close   High    Low     Volume
2018-01-02  AAPL    170.16  172.26  172.30  169.26  25555934
2018-01-02  MSFT    86.13   85.95   86.31   85.50   22483797
Run Code Online (Sandbox Code Playgroud)

实现我的目标的正确方法是什么?

谢谢 !!

json dataframe python-3.x pandas

2
推荐指数
1
解决办法
7925
查看次数

标签 统计

arrays ×1

dataframe ×1

json ×1

pandas ×1

python-3.x ×1

ruby ×1