我想按日期合并两个data.frames.数据包含给定股票每个交易日的股票数据.活动包含有关公司的新闻.有些新闻是在非交易日公布的,因此今天没有库存数据.例如,04.01.2000公司的一些新闻已经发布.我想将这篇文章与NEXT交易日的返回合并,在这种情况下,返回06.01.2000.那么我怎样才能在合并时跳到下一个交易日呢?
date1 <- c("01.01.2000","02.01.2000","03.01.2000","06.01.2000","07.01.2000","09.01.2000")
ret1 <- c(-2.0,1.1,3,1.4,-0.2, 0.6)
data <- data.frame(date1, ret1)
data
# date1 ret1
# 1 01.01.2000 -2.0
# 2 02.01.2000 1.1
# 3 03.01.2000 3.0
# 4 06.01.2000 1.4
# 5 07.01.2000 -0.2
# 6 09.01.2000 0.6
date2 <- c("02.01.2000","03.01.2000","04.01.2000","08.01.2000")
news2 <- c("blabla1", "blabla2","blabla3","blabla4")
events <- data.frame(date2, news2)
events
# date2 news2
# 1 02.01.2000 blabla1
# 2 03.01.2000 blabla2
# 3 04.01.2000 blabla3
# 4 08.01.2000 blabla4
Run Code Online (Sandbox Code Playgroud)
输出应如下所示:
# date news ret
# 1 02.01.2000 blabla1 …Run Code Online (Sandbox Code Playgroud) 我正在建立一个NSPredicate来获取Core Data,它的设置如下:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(date >= %@) AND (date <= %@)", todaysDate, tomorrowsDate];
Run Code Online (Sandbox Code Playgroud)
我需要todaysDate今天00:00:00,我需要tomorrowsDate今天23:59:59.
我不能设置todaysDate等于[NSDate date]然后用NSDateComponents操纵小时,分钟和秒,因为[NSDate date]给我一个比我当地实际时间提前5小时的日期(所以如果它是在5月6日晚上11点,那么[NSDate date]会给我"2014-05-07 04:00:00 +0000",但我仍然需要它认为它是5月6日,而不是7日!).
我如何操纵我在Xcode中使用的工具,以便始终将我的变量todaysDate变为今天午夜,并tomorrowsDate在明天午夜之前成为第二个?
我希望在存储之前将字符串转换为日期并使用
SimpleDateFormat format = new SimpleDateFormat("yyyy-mm-dd");
Date returnDate = format.parse(date);
Run Code Online (Sandbox Code Playgroud)
当我用样本日期运行它时:日期转换的输入字符串是2014-05-06,解析日期是Mon Jan 06 00:05:00 IST 2014
现在当我将returnDate存储在MySql中时,值为2014-01-06 00:05:00
为什么日期改变了?想知道我是否遗漏了什么.我浏览了与日期字符串转换相关的帖子: 如何使用java将日期从Datepicker转换为Mysql DATETIME格式?
我正在使用Postgresql数据库.我需要使用Postgresql数据库获取当前日期前两周的日期.
select date(now() - interval '2 week') from test_base
Run Code Online (Sandbox Code Playgroud)
如果今天的日期是2014-05-08以上sql应该给我2014-04-24?
但不知何故上面的查询根本不起作用?
所以我试图在Firebase中存储日期,如下所示:
var fb = new Firebase(FIREBASE_URL);
var syncData = $firebase(fb);
var date = new Date(2014, 0, 1);
console.log(date);
syncData.$child('date').$set(date);
var dateInFirebase = syncData.$child('date');
dateInFirebase.$on('loaded', function(){
console.log(dateInFirebase.$value);
});
Run Code Online (Sandbox Code Playgroud)
第一个日期正确记录'Wed Jan 01 2014 00:00:00 GMT + 0100(CET)',但是第二个日志是:'2013-12-31T23:00:00.000Z',即1天前,是这个firebase中的一些bug还是我错过了一些明显的东西?我没有发现任何其他问题,所以我倾向于认为我做错了什么,我只是不知道是什么.
编辑:好的,现在我很困惑,如果我用空构造函数替换dateconstructor(今天的日期),他正确地存储日期..
我需要在Java中将字符串数组转换为Date类型。我查了一些示例代码,它们几乎都要求做同样简单的事情。这就是我在做什么:
String[] dateString = { "2014/05/01", "2014/05/02", "2014/05/03", "2014/05/04", "2014/05/05"};
Date[] dt = new Date[5];
for(int i=0;i<count;i++){
dt[i]= new SimpleDateFormat("yyyy/mm/dd").parse(dateString[i]);
}
Run Code Online (Sandbox Code Playgroud)
问题出在循环内的行上,我收到一条错误消息,指出:“ ParseException未处理的异常”。Eclipse建议我用try and catch块将其包围,这是我做的。它现在可以运行,但是我在dt数组中输入的日期与我输入的日期不匹配。我想我正在获取某种默认值,该值从2014年1月1日开始。
有人知道这是什么以及如何解决?
谢谢!
我想实现的是一个日期转换格式yyyyMMdd,以本地格式,即yyyy/MM/dd或dd/MM/yyyy等.我不感兴趣的部分时间,我只是需要时间.
该函数将采用字符串日期并以区域设置格式返回字符串日期.
我现在拥有的是:
dateFormat = new SimpleDateFormat("yyyyMMdd", Locale.getDefault());
convertedDate = dateFormat.parse("20120521");
Run Code Online (Sandbox Code Playgroud)
我之后尝试的所有东西要么返回一个带有时间和GMT等的长字符串,要么是我传递给函数的相同字符串.
我将日期和时间存储在首选项中Long:
// put
SharedPreferences settings =
PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
settings.edit().putLong("pref_datetime", System.currentTimeMillis()).commit();
// get
Date date2 = new Date(settings.getLong("pref_datetime", 0));
Run Code Online (Sandbox Code Playgroud)
提取日期后,如何检查它是否属于当前周(从星期一开始)?
为什么下面的代码产生这样的输出?
String oldDate = "2013-12-05 01:34:54.270"
Date date = Date.parse( 'yyyy-mm-dd hh:mm:ss', oldDate )
Output : Sat Jan 05 01:34:54 EST 2013
Run Code Online (Sandbox Code Playgroud)
什么时候应该简单地将12月5日作为输出中的日期?实际上在原始字符串中,无论我放入它的月份都会产生完全相同的输出.
如何使用Joda-Time将天数转换为月数和天数.例如,当我有33天时,它应该显示1个月和2天.
public static void main(String[]args)
{
Calendar calendar = new GregorianCalendar();
int years = calendar.get(Calendar.YEAR);
int month = (calendar.get(Calendar.MONTH))+1;
int day = calendar.get(Calendar.DATE);
DateTime startDate = new DateTime(years, month, day, 0, 0, 0, 0);
DateTime endDate = new DateTime(2014, 7, 3, 0, 0, 0, 0);
Days d = Days.daysBetween(startDate, endDate);
int days = d.getDays();
int t = 1000 * 60 * 60 *24;
int days = days/t;
System.out.println(days);
}
Run Code Online (Sandbox Code Playgroud) date ×10
java ×5
android ×1
angularfire ×1
dataframe ×1
firebase ×1
grails ×1
groovy ×1
javascript ×1
jodatime ×1
logic ×1
merge ×1
mysql ×1
nsdate ×1
nspredicate ×1
postgresql ×1
r ×1
sql ×1